localhost does not work unless do changes in document root - linux

My localhost doest work till i do changes in document root.
I want default Document Root to be "/var/www/html", I have directory mediatest inside /var/www/html and I want localhost should point till "/var/www/html/mediatest".
but when i set default Document Root to be "/var/www/html" localhost points till html and I need to add mediatest directory name in URL and when I change Document Root to be "/var/www/html/mediatest" it works fine but I cant use folders in html directory.
How can i fix this?

You can do it useing htaccess.
Add below line to your htacess:
RewriteRule ^$ /abc/ [R=301,L]

Hmm... How can you imagine this? You want to open one directory and see files in another directorys?
I see two ways:
Put your files from html into mediatest
Setup your server to use virtualhosts and change your hosts files. For example, add mediatest.local and html.local and don't use localhost any more.

You can not navigate outside the document root.
You can make /var/www/html/ your document root and create an index file to redirect users to mediatest.

Related

Exclude a folder in Xenforo

I have installed Xenforo in my public_html in my Cpanel which means my forum is available in site.com
Now I want to add another folder contains my web app and want to access it in site.com/myapp. I created a folder "myapp" in public_htmll beside Xenforo files and now when I enter the URL site.com/myapp it goes to a 404 page of the forum. I need to Xenforo exclude this folder and let the app lunch in this address. How can I do that?
You should move your XenForo installation to a subdirectory - many people use site.com/community as the forum root and either have a separate home page at site.com/ or just redirect the domain root to the /community URL.
This then allows you to have other apps running in other subdirectories like site.com/myapp without issue.
In XenForo 2.x this works fine, If you have enabled full Seo friendly urls from admin panel, Make sure you have proper .htaccess file in place. In you case, I believe you did not upload .htaccess file in public_html folder

Redirect domain to subfolder, from subfolder

My friend's dad asked me to change the design of his website, so he gave me access to his account and I created a sub-folder where I uploaded the new design. The problem is that he has forgotten the password to his control panel and I only have access to the FTP in the sub-folder. I'm trying to redirect the domain (currently going to the root folder) to the sub-folder but since I don't have access to the root folder I'm finding it difficult to do so.
I've already tried a redirect with .htaccess but since I can only upload the file to my sub-folder, it thinks the redirect is to a sub-folder within that folder, instead of the folder inside the root.
TL;DR...
I want to redirect 'mydomain.com' to 'mydomain.com/folder' but only have access to the FTP in 'mydomain.com/folder'.
Thanks in advance!
.htaccess applies to the directory that contains it.
You cannot change this if you have not access to vhost.conf files (what would change the base dir of the site) or to the parent directory’s .htaccess.
You will need to:
Reset your dad’s friend’s password and forget this redirect, changing the existing web files (the cleanest way), or
change the .htaccess file in your parent's dad directory, adding this:
RewriteEngine on
RewriteRule ^/?(.*)$ dir2/$1 [R=301,L,P]
This should redirect the user to dir2, hiding that redirect in the urlbar.
h/t #Alejandro Teixeira Muñoz for the edits!

How to change base_url in drupal 7, fail to find answer online

I am trying to change base_url on my drupal 7 website, but failed to do it and google a lot, still could not solve it .
I am running localhost/drupal "on my local server. but I want to run it like
" localhost ". ( sorry I have to get rid of http://, otherwise it doesnot let me post)
How to get rid of folder in the url. I know I need to change $base_url on sites/default/setting.php to
$base_url = 'localhost'; // NO trailing slash! ( sorry I have to get rid of http://, otherwise it doesnot let me post)
And in the .htaccess file I am so confused what should I change. People online have their own solution, some said they work , some could not . Could someone give me some suggesttion ?
I assume this has to do with where you have placed your files.
In your file system, remove the 'drupal' directory and place all the files within that at /var/www/html ... instead of /var/www/html/drupal, if that's how it is currently set up.
I feel your pain; I've had this trouble myself before and I believe I had to alter both the settings.php and the htaccess (but try one at a time to begin with). I'm fairly sure that the section below in your .htaccess is what needs changing (just remove the hash from in front of the RewriteBase line). If you're unsure of what you're doing, make a copy of your .htaccess as htaccess.txt and then you can always switch back over if things get nasty.
# Modify the RewriteBase if you are using Drupal in a subdirectory or in a
# VirtualDocumentRoot and the rewrite rules are not working properly.
# For example if your site is at http://example.com/drupal uncomment and
# modify the following line:
# RewriteBase /drupal
I just realised that what you need is a re-write rule in an .htaccess file within your root folder (not the one that's inside the drupal folder). First, undo any edits you've already made, then create an .htaccess file in the same folder that contains your drupal folder and in it, add:
RewriteEngine On
RewriteRule ^$ /drupal [L]
That should send any traffic from the root into the drupal file structure. If you get issues with strange css, or urls that include the /drupal path, you'll need to revisit the other options in the /drupal/.htaccess file and your settings.php file in order to get it all working correctly.
However, going down this route, you may as well just copy all the files and folders into the root directory anyway (as the first answer suggested), assuming you're not going to be running multiple sites. If you do want to be testing multiple sites, you can just change the RewriteRul above to whatever site directory you're wanting to test in future.

Redirect localhost subaddress to another folder

My "htdocs" folder is set to this: C:\webserver\xampp\htdocs
All my folders exist in subfolders of this folder.
I have such another folder here: c:\MyProjects\project1
I need to htaccess rewrite so, when I write: http://127.0.0.1/project1/myfile.php
On my browser, I will see the result of "myfile.php" inside "project1" folder.
Is it possible?
Is it possible?
No, you can't rewrite a URI outside of your document root, C:\webserver\xampp\htdocs. And htaccess file sitting in that htdocs directory won't be able to point a request outside of the htdocs directory. Mod_rewrite isn't what you want anyways. You want to use mod_alias from within the vhost config or server config. Something along the lines of:
Alias /project1 C:/MyProjects/project1
See also: Make XAMPP/Apache serve file outside of htdocs

CakePHP htaccess modification to allow vBulletin

I'm looking to set-up a vBulletin install next to a CakePHP install. I was planning on just popping the the vB folder into webroot, but when accessing the folder in my browser, it loses the short URL (i.e. it goes from .com/community to .com/app/webroot/community)
Because of this I wanted to put the vB folder into the root of the directory, next to the app directory, so I can access it directly via .com/community - but the htaccess file is getting in the way, complaining that it can't find the community controller.
So my question is this - what edits do I need to make to the htaccess file for it to allow access to the /community folder directly.
Thank you
Add the following line to your .htaccess file:
RewriteRule ^(community).* - [NC,L]
This will allow direct access to the community folder which is in root directory. Accessing http://localhost/community would be possible after adding this rule.

Resources