首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Apache VirtualHost错误:无效主机名

Apache VirtualHost错误:无效主机名
EN

Server Fault用户
提问于 2015-01-10 00:39:30
回答 2查看 11.5K关注 0票数 5

对于我来说,设置一个VirtualHost来测试一个新的php对http.conf来说过去非常简单:

代码语言:javascript
复制
NameVirtualHost *:80

<VirtualHost *:80>
        DocumentRoot /opt/webgrind/www
        ServerName webgrind
</VirtualHost>
<VirtualHost *:80>
        DocumentRoot /opt/opencart/www
        ServerName opencart
</VirtualHost>

我只需要重新启动服务和访问:http://webgrind/http://opencart/ (/etc/hosts中没有任何更改)

但是服务器(CentOS 6)中发生了一些变化,现在error.log声明:

代码语言:javascript
复制
[error] avahi_entry_group_add_service_strlst("opencart") failed: Invalid host name
[error] avahi_entry_group_add_service_strlst("webgrind") failed: Invalid host name

当访问http://webgrind/时,我会得到一个页面错误。有什么想法吗?

服务器版本: Apache/2.2.15 (Unix)服务器构建日期:2011年12月8日18:10:49

EN

回答 2

Server Fault用户

发布于 2017-04-01 17:23:59

由于这个问题是搜索"AH02415:严格无效主机名“时出现的第一个问题,我将添加一个答案来记录我今天浪费的时间,因为我的开发机器中的大多数虚拟主机停止工作(例如shop_one.web)。

我已经将Apache更新为2.4.16-18.1版本,显然HttpProtocolOptions现在默认为Strict,因此拒绝了本地主机名,这些主机名中有'_‘(下划线)(可能还有OP的主机名)。

我知道它们不是正确的主机名,但对于本地/个人使用来说,不会伤害任何人,所以我补充了一句:

代码语言:javascript
复制
HttpProtocolOptions Unsafe

给我默认的server.conf和生活回到以前的样子。另请参阅:

https://httpd.apache.org/security/vulnerabilities_24.html https://unix.stackexchange.com/questions/340013/why-am-i-getting-400-bad-request/341306

票数 5
EN

Server Fault用户

发布于 2015-09-15 00:14:52

在apache中配置虚拟主机并不能使服务器上的名称解析服务了解它,因此您必须更新/etc/host,或者执行以下操作:

curl -H 'Host: webgrind' 127.0.0.1

要覆盖默认行为,请执行以下操作。

票数 -1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/658537

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档