【问题标题】:Navigating to IP address shows different page than navigating to hostname?导航到 IP 地址显示与导航到主机名不同的页面?
【发布时间】:2009-06-05 19:14:49
【问题描述】:

我正在查看一个我们称之为 www.example.com 的网站。快速traceroute www.example.com 显示其IP 地址为208.76.xx.xxx。

当我在 Firefox 中浏览到“www.example.com”时,我会看到网站(一个登录页面)。但是,当我浏览到 208.76.xx.xxx 时,会显示默认的“欢迎使用 cPanel!”网页。

这里有更多信息:

  1. 当我在 Firefox 中导航到“www.example.com”或“http://www.example.com”时,我被重定向到“http://example.com”,在那里我看到了正常的网页。
  2. curl -L www.example.com 返回网站,curl -L 208.76.xx.xxx 返回“欢迎使用 cPanel!”页面。
  3. 只看标题:curl -LI www.example.com 表明我被重定向到网站的登录页面(如预期的那样),而 curl -LI 208.76.xx.xxx 没有重定向。
  4. 208.76.xx.xxx 没有出现在我的 hosts 文件中。
  5. 我正在使用 OpenDNS。

谁能解释一下为什么导航到网站的域名显示的页面与导航到网站的 IP 地址完全不同?

感谢您的帮助,请随时提出问题/建议测试让我运行。

【问题讨论】:

  • 看起来这应该转到 ServerFault.com。
  • 不,这是 HTTP 的基础,HTTP 是一种协议,协议是程序员的工具。

标签: dns ip-address traceroute


【解决方案1】:

它被称为虚拟主机。

一个 Web 服务器(和 IP 地址)可以为数千个站点提供服务,在 HTTP 请求中具有不同的 Host: 字段。

您向浏览器询问 example.org;浏览器告诉服务器

GET / HTTP/1.1
Host: example.org
Connection: close

Webserver 查看是否可以为 example.org 提供服务,如果可以,它将为该特定站点提供根页面。

代理也以这种方式工作:您的浏览器将每个 HTTP 请求发送到代理,提供 Host:,代理连接到该主机,请求一个页面并将其返回,缓存。

【讨论】:

    【解决方案2】:

    这称为虚拟主机。它是网络服务器(Apache 等)根据请求中使用的主机名提供不同内容的地方。

    【讨论】:

      【解决方案3】:

      这是网络服务器的配置。 Web 服务器将查看请求的主机名,并显示为该主机名配置的网站。

      【讨论】:

        【解决方案4】:

        根据用于访问 IP 地址的主机名,可以使 Web 服务器做出不同的反应。这称为基于名称(相对于基于 IP)的虚拟主机。 Apache 基于名称的虚拟主机支持 文档的Name-based vs. IP-based Virtual Hosts 部分进行了更详细的说明。

        【讨论】:

          【解决方案5】:

          两部分:

          1. 对服务器的 http 请求包含主机名,因此服务器上的 http 服务可以根据您尝试连接的网站做出不同的响应。 (我昨晚才知道这一点)。
          2. 重定向是基于主机名而不是 IP 地址发生的。如果您不使用主机名,服务器将不知道如何重定向您。

          【讨论】:

            【解决方案6】:

            简短的版本是:它们不是同一个请求。

            最有可能的答案是 alamar 提供的(我也投了赞成票),但还有很多您没有检查的可能因素:

            1- 两个 url 产生不同的 HTTP 请求。

            这是 HTTP 工作方式的结果。在网络级别,您假设建立了相同的连接(到主机名的 HTTP 端口),这是真的。但是,服务器会根据其他应用程序级 (HTTP) 变量返回内容。

            2- 实际上并未与 IP 地址建立连接。有许多提供网络间接的机制。最重要的是:代理配置和 DNS 缓存。在任何一种情况下,使用 netstat 来确认连接都是最好的做法。

            3- 第三方正在修改内容。

            这可能是好的或坏的原因。您可以拥有安全软件、来自 WiFi 热点的 NAT 等。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2022-09-28
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2017-02-13
              • 2014-12-02
              相关资源
              最近更新 更多