更改Apache2 ports.conf以便localhost接口监听端口80

时间:2013-06-05 08:17:04

标签: apache2 virtualhost hosts ports virtual-hosts

目前我在/etc/apache2/ports.conf中有此配置:

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文件:

原件:

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

更新:

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

但是在重新启动apache之后,它显示了/var/www中的默认apache2 index.html而不是/var/www/foo下的项目

这是服务器上唯一启用的VirtualHost。

此处还有我的/etc/hosts文件:

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

主机操作系统是Debian 7.

有什么建议吗?

3 个答案:

答案 0 :(得分:1)

您是否已将/etc/apache2/sites-available/foo.com符号链接到/etc/apache2/sites-enabled/000-foo.com。

默认的apache配置仅从启用站点的目录中读取虚拟主机,而不是可用的站点。

我猜你如果你去/ etc / apache2 / sites-enabled并输入ls -la,你只会看到默认网站的配置而不是你的新网站。如果是这种情况,则将您的foo.com符号链接到启用站点的目录,如下所示ln -s ../sites-available/foo.com 001-foo.com

答案 1 :(得分:0)

我认为Listen 80不应该更改为Listen 127.0.0.1:80。所有其他更改看起来都不错。

答案 2 :(得分:-2)

  • 卸载apache2服务
  • 运行update cmd
  • 重新安装apache2
  • 编辑虚拟主机

这对我有用。