我有多个站点,所有设置都与下面相同,只是“bk”的位置有其他内容……
NameVirtualHost *:80
<VirtualHost bk:80>
ServerName bk
DocumentRoot /var/www/bk.com/
</VirtualHost>
当我重新启动 Apache 时出现以下错误:
[Mon Jan 17 10:28:56 2011] [error] VirtualHost bk:80 -- mixing * ports and non-* ports with a NameVirtualHost address is not supported, proceeding with undefined results
[Mon Jan 17 10:28:56 2011] [warn] NameVirtualHost bk:80 has no VirtualHosts
我不明白……我的另外两个网站也以完全相同的方式配置了虚拟主机,但没有出现任何错误
更新
已修复一条错误消息-这就是我现在所在的位置..
<VirtualHost bk:80>
ServerName bk
DocumentRoot /var/www/bk.com/
</VirtualHost>
[Mon Jan 17 10:28:56 2011] [error] VirtualHost bk:80 -- mixing * ports and non-* ports with a NameVirtualHost address is not supported, proceeding with undefined results
答案1
NameVirtualHost 指令通常只应在服务器配置中使用一次,通常看起来像“NameVirtualHost *:80”,这意味着“在所有可用的 IP 地址上提供虚拟主机”。在大多数情况下,只要包含“Host:”字段,您就不必关心接受请求的 IP 地址。