2013-06-05 110 views
3

目前,我有這個配置在/etc/apache2/ports.conf變化的Apache2 ports.conf以本地主機接口,偵聽端口80

NameVirtualHost *:80 
Listen 80 

一切工作正常,但我想將其改爲:

NameVirtualHost 127.0.0.1:80 
Listen 127.0.0.1:80 

重啓動Apache後,但是,它顯示了以下錯誤消息:

[warn] NameVirtualHost 127.0.0.1:80 has no VirtualHosts 

所以我更新下/etc/apache2/sites-available/foo.com網站虛擬主機文件:

原文:

<VirtualHost *:80> 
... 
</VirtualHost> 

更新時間:

<VirtualHost 127.0.0.1:80> 
... 
</VirtualHost> 

但是重啓動Apache後,它顯示了默認的Apache2的index.html是在/var/www代替項目/var/www/foo

這是服務器上唯一啓用的VirtualHost。

而且,這裏是我的/etc/hosts文件:

127.0.0.1 localhost 
127.0.1.1 debian 
<publicIP> <foo.com> <serverhostname> 

主機操作系統是Debian的7

有什麼建議?

回答

1

您是否已將/etc/apache2/sites-available/foo.com鏈接到/etc/apache2/sites-enabled/000-foo.com。

默認的apache配置只能從啓用了站點的目錄中讀取虛擬主機,而不是從可用的站點讀取虛擬主機。

我猜測,如果你去/ etc/apache2 /網站啓用和輸入ls -la你只會看到一個配置爲默認網站,而不是你的新網站。如果是這種情況,然後符號鏈接您的foo.com到網站啓用目錄如下ln -s ../sites-available/foo.com 001-foo.com

+6

不應該'a2ensite foo'成爲更好的解決方案嗎? – Wolfer

0

我不認爲Listen 80應該已被更改爲Listen 127.0.0.1:80。所有其他更改看起來不錯。

-2
  • 卸載的Apache2服務
  • 運行CMD更新
  • 重新安裝的Apache2
  • 編輯虛擬主機

這爲我工作。