2013-04-02 63 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