Apache配置虛擬主機後,不能訪問localhost的問題
阿新 • • 發佈:2019-01-03
先說配置虛擬主機的流程:
1.先開啟httpd.conf檔案,開啟httpd-vhosts.conf
# Virtual hosts Include conf/extra/httpd-vhosts.conf
2.然後開啟httpd-vhosts.conf檔案,配置一個虛擬主機
<VirtualHost *:80> DocumentRoot "D:/amp/www/wechat" ServerName www.wechat.com </VirtualHost>
3.開啟hosts檔案,新增域名
127.0.0.1 www.wechat.com
4.重啟Apache,這時虛擬主機的域名www.wechat.com可以正常訪問,
但是我的localhost就不能訪問了。報錯如下:
解決過程:
我的思路是,新增一個名為localhost的虛擬主機不就可以了?
1.開啟httpd-vhosts.conf檔案,配置一個名為localhost的虛擬主機:
<VirtualHost *:80>
ServerName localhost
DocumentRoot "D:/amp/www"
</VirtualHost>
2.開啟hosts檔案,新增域名
注意:這一步,做或者不做,都沒有影響,親測通過。
#127.0.0.1 localhost
3.重啟Apache,期待的結果並沒有出現,哎,都累得半死了,還是不能訪問localhost,雖然其他虛擬域名都可以正常訪問,
可是我就是想魚和熊掌兼得,繼續查詢問題
問題解決:
最後我比對了我原來的配置程式碼,發現,在httpd.conf檔案中有一行程式碼是需要註釋掉的
#ServerName localhost:80
就是這一行程式碼,把我折騰的夠嗆,把 ServerName 這一行程式碼註釋掉就可以了
也許你的httpd.conf檔案中並不是localhost:80 這個值,可能是 ServerName a.com:80 ; 都一樣,直接註釋掉
以後無論開啟或者關閉虛擬主機,localhost都可以正常訪問。