提问人:Glenn Slaven 提问时间:9/2/2008 最后编辑:CœurGlenn Slaven 更新时间:8/6/2017 访问量:5889
错误:“VirtualHost *:80 -- 不支持将 * 端口和非 * 端口与 NameVirtualHost 地址混合,继续显示未定义的结果”
Error: "VirtualHost *:80 -- mixing * ports and non-* ports with a NameVirtualHost address is not supported, proceeding with undefined results"
问:
我在 WindowsXP 上运行 WAMP v2.0,并在 http-vhosts.conf 文件中设置了一堆虚拟主机。
这是有效的,但是在上周,每当我尝试启动WAMP时,我都会在事件日志中收到此错误:
VirtualHost *:80 -- 混合 * 端口和 具有 NameVirtualHost 的非 * 端口 地址不受支持,继续 结果未定义。
服务器无法启动。我想不出有什么变化。
我已经复制了下面的 conf 文件。
NameVirtualHost *
<VirtualHost *:80>
ServerName dev.blog.slaven.net.au
ServerAlias dev.blog.slaven.net.au
ServerAdmin [email protected]
DocumentRoot "c:/Project Data/OtherProjects/slaven.net.au/blog/"
ErrorLog "logs/blog.slaven.localhost-error.log"
CustomLog "logs/blog.slaven.localhost-access.log" common
<Directory "c:/Project Data/OtherProjects/slaven.net.au/blog/">
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
编辑:我的意思是补充,如果我更改 NameVirtualHosts 指令以指定端口,即
NameVirtualHost *:80
我收到此错误:
通常只允许使用每个套接字地址(协议/网络地址/端口)一次。: make_sock: 无法绑定到地址 0.0.0.0:80
答:
好吧,问题似乎在于分配端口的方式(和顺序)。
基本上,*:80 表示“对此配置中的所有主机使用端口 80”。执行此操作时,Apache 会尝试将该主机绑定到 0.0.0.0:80,这意味着该主机将接收通过端口 80 进入计算机的每个数据包,无论它打算转到哪个虚拟主机。这是您应该只使用一次的东西,并且仅当您在该配置中有一个主机时。
因此,如果配置文件中的两个主机上有相同的 *:80 指令,则服务器将不会加载,因为它将尝试绑定 0.0.0.0:80 两次,第二次尝试失败。(这解释了“通常只允许使用每个套接字地址(协议/网络地址/端口)的一种用法:make_sock:无法绑定到地址 0.0.0.0:80”消息)。
名称VirtualHost *:80
我收到此错误:
通常只允许每个套接字地址(协议/网络地址/端口)使用一次>。: make_sock: 无法绑定到地址 0.0.0.0:80
我认为这可能是因为您有其他东西在监听端口 80。您是否有其他服务器(或例如Skype)在运行?
(如果是 Skype:取消勾选“高级>连接>工具>选项>使用端口 80 和 443 作为传入连接的替代方案”)
评论