【问题标题】:Resolving IP addresses that correspond to multiple domain names解析多个域名对应的IP地址
【发布时间】:2014-06-18 03:36:18
【问题描述】:

我了解从域名中获取IP地址的过程,联系名称服务器的层次结构直到返回地址,但是当一个IP地址对应多个域名时,请求如何解析?如果我设置一个 Apache 服务器,有没有一种方法可以区分这些不同的域?

【问题讨论】:

    标签: apache dns ip


    【解决方案1】:

    当您反向解析一个 IP 时,它将返回到它在该区域中的 PTR 记录,该记录只有一个。例如 www.google.com

    Non-authoritative answer:
    Name:    www.google.com
    Addresses:  2607:f8b0:4007:800::1010
              74.125.224.242
              74.125.224.244
              74.125.224.240
              74.125.224.241
              74.125.224.243
    

    但 74.125.224.242 反向解析为:

    Name:    lax04s08-in-f18.1e100.net
    Address:  74.125.224.242
    

    而不是 www.google.com。

    ===

    apache 服务器本身使用配置文件中的 Listen 指令侦听一个独立于附加到该 ip 的主机名的 IP 地址。 Apache 只想听到来自该 IP 上的端口 80 的数据。

    监听 *:80

    监听 AAA.BBB.CCC.DDD:80

    当您设置虚拟主机时,Apache 能够从标头中提取主机名并将其发送到正确的 DocumentRoot 以处理您使用该主机名呈现的页面。

    例子:

    <VirtualHost *:80>
        ServerName www.server.com
        ServerAlias server.com
        DocumentRoot "c:\htdocs\wwwroot"
    </VirtualHost>
    
    <VirtualHost *:80>
        ServerName www.server2.com
        DocumentRoot "c:\htdocs\wwwroot2"
    </VirtualHost>
    

    希望这会有所帮助。

    【讨论】:

    • 那么澄清一下,是服务器将区分各种域名,是吗?我读过 rDNS 并最初认为它可能有助于解决这个问题,但它实际上在这里起到什么作用吗?
    • 是的,无论是 Apache 还是 IIS,服务器都会从“Host:”标头中提取主机名,并将其发送到分配给该主机名的特定绑定。
    • 谢谢加里!第一天,第一个帖子,你已经超过了我的累积声誉。
    猜你喜欢
    • 2012-05-02
    • 2017-07-07
    • 2013-03-25
    • 2018-06-04
    • 2015-03-06
    • 2010-09-05
    • 2010-11-07
    • 2011-03-12
    • 1970-01-01
    相关资源
    最近更新 更多