2013-06-05 60 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
  • 编辑虚拟主机

这为我工作。