NameVirtualHost *:80没有虚拟主机
我有两个域名,两个SSL证书和两个IP地址。 我正在尝试为他们configuration我的apache虚拟主机文件。
首先,我为端口80和443注释了“NameVirtualHost”和“Listen”的所有实例。然后,我用我的虚拟主机文件做了以下操作。
虚拟主机文件的域1:
NameVirtualHost 1.1.1.1:80 Listen 1.1.1.1:80 Listen 1.1.1.1:443 <VirtualHost 1.1.1.1:80> ServerName domain1.com ... </VirtualHost> <VirtualHost 1.1.1.1:443> ... </VirtualHost>
domain2的VirtualHost文件:
NameVirtualHost 2.2.2.2:80 Listen 2.2.2.2:80 Listen 2.2.2.2:443 <VirtualHost 2.2.2.2:80> ServerName domain2.com ... </VirtualHost> <VirtualHost 2.2.2.2:443> ... </VirtualHost>
在你configuration的某个地方,可能是在Apache的默认configuration文件(我认为Ubuntu中的/etc/apache2/httpd.conf
?有人可以纠正我的意见),是一个看起来像这样的行:
NameVirtualHost *:80 # Also Listen 80 Listen 443
注释掉它们,并在你的VirtualHost
configuration文件中添加:
Listen 111.111.111.111:80 Listen 222.222.222.222:80 # If also using SSL Listen 111.111.111.111:443 Listen 222.222.222.222:443 NameVirtualHost 111.111.111.111:80 NameVirtualHost 222.222.222.222:80
在许多默认的Apacheconfiguration中, Listen
和NameVirtualHost
指令都提供有通配符,或全局适用于所有networking接口。 由于您使用绑定到不同configuration的多个IP地址,因此您的configuration指令中需要比发行版的默认configuration文件更具体。
我已经忽略了两个月我有一个Ubuntu服务器相同的错误。 我发现这个post很好地解决了错误。 谢谢迈克尔 ! 和Jay一样 ,我在/etc/apache2/ports.conffind了罪魁祸首。 我试过这个:
#NameVirtualHost *:80
我只评论了这一行,没有其他变化,没有更多
“NameVirtualHost *:80没有VirtualHosts”
- WebSockets和Apache代理:如何configurationmod_proxy_wstunnel?
- 上传文件到PHP时,为什么$ _FILES是空的?
- WAMP不会变成绿色。 和VCRUNTIME140.dll错误
- 重写规则最后标志不起作用?
- 在Apache RewriteRule指令中设置环境variables时,是什么原因导致variables名以“REDIRECT_”为前缀?
- 如何检查是否在PHP中启用mod_rewrite?
- 如何仅在HTTPS上从.htaccess设置HSTS标头
- 如果你使用HTTPS将你的URL参数安全的嗅探?
- 由peer重置的连接:mod_fcgid:从FastCGI服务器读取数据时出错