mac os下xampp配置基于域名的虚拟主机

1.在终端运行“sudo vi /XAMPP/etc/httpd.conf”,打开Apche的配置文件
2.在httpd.conf中找到“#Include /XAMPP/etc/extra/httpd-vhosts.conf”,去掉前面的“#”,保存并退出。
3.重启Apache服务之后就开启了它的虚拟主机配置功能。
4.运行“sudo vi /XAMPP/etc/extra/httpd-vhosts.conf”,这样就打开了配置虚拟主机的文件httpd-vhost.conf,配置你需要的虚拟主机了。需要注意的是该文件默认开启了两个作为例子的虚拟主机:
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/usr/docs/dummy-host.example.com"
ServerName dummy-host.example.com
ErrorLog "/private/var/log/apache2/dummy-host.example.com-error_log"
CustomLog "/private/var/log/apache2/dummy-host.example.com-access_log" common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/usr/docs/dummy-host2.example.com"
ServerName dummy-host2.example.com
ErrorLog "/private/var/log/apache2/dummy-host2.example.com-error_log"
CustomLog "/private/var/log/apache2/dummy-host2.example.com-access_log" common
</VirtualHost>
而实际上,这两个虚拟主机是不存在的,在没有配置任何其他虚拟主机时,可能会导致访问localhost时出现如下提示:
Forbidden
You don't have permission to access /index.php on this server
最简单的办法就是在它们每行前面加上#,注释掉就好了,这样既能参考又不导致其他问题。
增加如下配置
<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "/Applications/XAMPP/htdocs/a"
    <Directory "/Applications/XAMPP/htdocs/a">
    Options FollowSymLinks
    AllowOverride all
    Order allow,deny
    Allow from all
    </Directory>
    ServerName your.website.com
    ServerAlias your.website.com
    ErrorLog "/Applications/XAMPP/htdocs/a/test_error_log"
    CustomLog "/Applications/XAMPP/htdocs/a/test_access_log" common
</VirtualHost>
注意,里面的<Directory>要加上,而且options要设置成FollowSymLinks,保存退出,并重启Apache。
5.运行“sudo vi /etc/hosts”,打开hosts配置文件,加入”127.0.0.1 your.website.com“,
这样就可以配置完成sites虚拟主机了,这样就可以用“http://your.website.com”访问了,
其内容和“http://localhost/”完全一致。
6.但这样还有个问题,就是原来的localhost已经被指向另一个目录了,你还需要把localhost 的目录指向回来:
<VirtualHost *:80>
DocumentRoot "/Applications/xampp/htdocs/"
ServerName localhost
</VirtualHost>
这样就大功告成了!

这里找到一个图文的教程,很不错:http://www.cnblogs.com/heiniuhaha/archive/2011/10/14/2212478.html

你可能感兴趣的:(apache,server,OS,Access,终端)