将Apache2 ports.conf更改为localhost接口以侦听端口80

将Apache2 ports.conf更改为localhost接口以侦听端口80,apache2,virtualhost,hosts,ports,virtual-hosts,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

目前我在
/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>
主机操作系统是Debian7


有什么建议吗?

您是否将/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

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

  • 卸载apache2服务
  • 运行更新命令
  • 重新安装apache2
  • 编辑虚拟主机

这对我很有效。

难道不应该是一个更好的解决方案吗?
<VirtualHost 127.0.0.1:80>
...
</VirtualHost>
127.0.0.1   localhost
127.0.1.1   debian
<publicIP>  <foo.com> <serverhostname>