2013-04-02 64 views
0


我想添加一个虚拟主机到xampp服务器,但它似乎我失去了一些东西,因为第二个站点不显示,而是显示localhost。我不知道什么是错的这些设置:
这两个虚拟主机默认

NameVirtualHost *:80 
<VirtualHost *:80> 
    DocumentRoot "C:/xampp/htdocs" 
    ServerName localhost 
    </VirtualHost> 
    <VirtualHost *:80> 
    DocumentRoot "c:/xampp/htdocs/site1/public" 
    ServerName site1 
    <Directory "C:/xampp/htdocs/site1/public"> 
     AllowOverride All 
     Order allow,deny 
     Allow from all 
     Options all 
    </Directory> 
</VirtualHost> 


我加入了虚拟主机的hosts文件:

127.0.0.1  localhost site1 

回答

0

也许尝试只是增加

127.0.0.1 site1.local 

到您的主机文件(在Windows C:\ windows \ system32 \ drivers \ etc \ hosts)

保存文件,并确保从控制面板重新启动XAMPP

+0

还是要谢谢你。我已经尝试过了,从我从网上收集的信息中,它没有任何区别。 – FadelMS

0

试试这个:

在你httpd-vhosts.conf文件:

<VirtualHost localhost> 
    DocumentRoot "C:\xampp\htdocs" 
    ServerName localhost 
</VirtualHost> 

<VirtualHost site1> 
    DocumentRoot "c:\xampp\htdocs\site1\public" 
    ServerName site1 
    <Directory "C:\xampp\htdocs\site1\public"> 
     Options Indexes FollowSymLinks 
     AllowOverride All 
     Order Allow,Deny 
     Allow from all 
    </Directory> 
</VirtualHost> 

而在你hosts文件:

127.0.0.1 localhost 
127.0.0.1 site1 

我在这里所做的:

  • 而不是使用*:80,我使用主机的名称。这给它一个更直接的匹配方法。
  • 我已经用反斜杠将所有正向交换。这并没有真正改变,但Windows使用反斜杠 - 这只是一个经验法则。
  • 我已经删除NameVirtualHost,因为根据我目前的了解,它没有任何区别,因此折旧。未来的版本可能会将其视为未知密钥。
0

呀,只是用从麦克的解决方案,而你的httpd.conf文件中忘了取消注释行

#Include /Applications/XAMPP/etc/extra/httpd-vhosts.conf