【问题标题】:Why does apache vhost listen to IP为什么apache vhost监听IP
【发布时间】:2014-03-06 20:30:15
【问题描述】:

为什么 vhost 会直接监听 IP?

当请求一个IP地址http://xxx.xxx.xxx.xxx时apache返回了一个在请求域时应该返回的网页?这将导致重复的内容

有多个服务器,只有这一个在请求 IP 时返回一个默认的虚拟主机

这就是虚拟主机的样子

<VirtualHost *:80>
    ServerName domain.com
    DocumentRoot /var/www/public
</VirtualHost>

有人对如何解决它/错误配置的位置有什么建议吗?

如果所有虚拟主机都被删除,则http://xxx.xxx.xxx.xxx 返回 404

【问题讨论】:

    标签: apache virtualhost


    【解决方案1】:

    您可以在具有您想要的域的虚拟主机之前放置另一个虚拟主机。第一个虚拟主机将是默认主机,如果没有更接近的匹配,将提供服务。因此,如果您通过 ip 请求,那么它将匹配默认的。

    【讨论】:

    • 我不明白为什么我需要这样做.. 有多个服务器,这是唯一一个在单独请求 IP 时返回第一个虚拟主机的服务器
    • httpd.conf 中的虚拟主机是第一个,所以你可能有一个。然后它们按文件名的顺序排列 conf.d 中的文件名。通常我不会将我的虚拟主机放在 httpd.conf 中,然后创建一个名为 AAdefault.conf 的虚拟主机文件,我知道它会是第一个。我将其指向一个空目录,这样诸如垃圾邮件机器人之类的探测 ip 将一无所获。这样做可能会对搜索引擎产生影响,因此您需要查看您的案例才能看到它是否有效。
    • 进一步思考,我不确定 httpd.conf 中的那些首先出现。我使用第一个作为默认值,但如果 conf.d 中包含的那些在它可能不包含之前包含在内。你得试试看。我没有将虚拟主机放在主 conf 文件中,所以这对我来说不是问题。
    猜你喜欢
    • 1970-01-01
    • 2013-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-29
    • 2012-08-20
    • 2014-05-27
    • 2011-10-02
    相关资源
    最近更新 更多