1. 程式人生 > >wampserver配置vhost虛擬主機以後 localhost不好使

wampserver配置vhost虛擬主機以後 localhost不好使

今天想試用一下php7,但是發現php7只支援Apache2.4版本,而我電腦上的Apache是2.2版本,為了想嚐鮮,就必須去下載新的Apache2.4

php7和apache2.4安裝整合以後,localhost可以正常訪問,沒問題。

然後我又配置了幾個虛擬主機,這時候,虛擬主機可以正常訪問,但是localhost就訪問不了了。

 

其實以前這種問題我也經歷過,比如我之前用的php5.4搭配Apache2.2,就可以虛擬主機和localhost都可以訪問;

但是我之前怎麼解決的我也不記得了,今天又折騰了好久,最後發現,其實就是註釋掉一行程式碼的事情。

 

先說配置虛擬主機的流程:

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都可以正常訪問。

 

總結:今天在這裡記錄一下,自己犯過兩次的錯誤,保證以後不再犯了,