apache配置虛擬主機,爲什麼總是第一個VirtualHost起效

Apache配置虛擬主機,爲什麼總是第一個VirtualHost起效?

httpd.conf加入以下設置後,
訪問"www.abc.cn"、"www.abc.net"、"test.abc.cn"時,爲什麼都是第一個VirtualHost起效——即訪問的都是“E:/website/www/abc1”,怎樣解決啊!

NameVirtualHost *:80

<VirtualHost *:80>
DocumentRoot "E:/website/www/abc1"
ServerName www.abc.cn
</VirtualHost>

<VirtualHost *:80>
DocumentRoot "E:/website/www/abc2"
ServerName www.abc.net
</VirtualHost>

<VirtualHost *:80>
DocumentRoot "E:/website/www/abc3"
ServerName test.abc.cn
</VirtualHost>


1、確認一下你的對應的3個域名都是指向了這臺服務器的IP
2、將 * 替換一下

<VirtualHost www.abc.cn:80>
DocumentRoot "E:/website/www/abc1"
ServerName www.abc.cn
</VirtualHost>

<VirtualHost www.abc.net:80>
DocumentRoot "E:/website/www/abc2"
ServerName www.abc.net
</VirtualHost>

<VirtualHost test.abc.cn:80>
DocumentRoot "E:/website/www/abc3"
ServerName test.abc.cn
</VirtualHost>


abc1下的內容移到站點根目錄下
然後httpd.conf改成這樣就好了:

NameVirtualHost *:80

<VirtualHost *:80>
DocumentRoot "E:/website/www"
ServerName www.abc.cn
</VirtualHost>

<VirtualHost *:80>
DocumentRoot "E:/website/www/abc2"
ServerName www.abc.net
</VirtualHost>

<VirtualHost *:80>
DocumentRoot "E:/website/www/abc3"
ServerName test.abc.cn
</VirtualHost>


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章