Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

xampp - mysite.local redirects to xampp folder

I've been battering my head against this all evening and can't see where I'm going wrong. I want to set a host, mysite.local, on xampp and have followed all the instructions, but I keep getting redirected to mysite.local/xampp.

Any ideas where I'm going wrong here? The paths are correct, and I've restarted Apache :)

I edited my hosts file to add:

127.0.0.1   mysite.local

I edited extra/httpd-vhosts.conf:

NameVirtualHost localhost:80
<VirtualHost localhost:80>
ServerName localhost
DocumentRoot "/Applications/XAMPP/xamppfiles/htdocs"
<Directory "/Applications/XAMPP/xamppfiles/htdocs">
  Options Indexes FollowSymLinks MultiViews
   AllowOverride all
       Order Deny,Allow
       Allow from all
</Directory>
</VirtualHost>

<VirtualHost localhost:80>
<Directory "/Applications/XAMPP/xamppfiles/htdocs/wd">
   Options Indexes FollowSymLinks MultiViews
   AllowOverride all
       Order Deny,Allow
       Allow from all
</Directory>
    DocumentRoot "/Applications/XAMPP/xamppfiles/htdocs/wd"
    ServerName mysite.local
</VirtualHost>
like image 381
bsod99 Avatar asked Oct 08 '22 13:10

bsod99


1 Answers

I've just got the very same problem yesterday. Even if the steps you did are correct in a context, you need to do some more tasks ;) You also need to edit Apach'es httpd.conf referring to your new VirtualHost like this:

# Your great site!
<Directory "/Applications/XAMPP/xamppfiles/htdocs/wd">
  Options Indexes FollowSymLinks Includes ExecCGI
  AllowOverride All
  Order allow,deny
  Allow from all
</Directory>

With this alone you'll be able to access http://mysite.local without the redirection to the XAMPP splash screen BUT you'll see the directories of your proyect (at least if you don't have and index in the root folder) If you need to load a file from a folder (for example /public/index.php) you'll need to use an .htaccess file. Remember this file must be in the folder(s) you want to have control. So for example, an .htaccess file located at the root of your project to redirect to the /public/index.php file you must do it this way:

RewriteEngine On
RewriteBase /
RewriteRule ^.*$ public/index.php [NC,L]

Just remember to use the correct regular expression you need and don't forget to take preventive measures with more security in a production website ;) I wish I've helped you out =)

like image 163
Metafaniel Avatar answered Oct 12 '22 11:10

Metafaniel