我理解从域名获取IP地址的过程,联系名称服务器的层次结构直到返回地址,但是当IP地址对应多个域名时,请求如何解析?如果我设置Apache服务器,是否有一种方法可以区分这些不同的域?
答案 0 :(得分: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的数据。
Listen *:80< - 侦听所有适配器(127.0.0.1和所有网络IP)
或
听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>
希望这有帮助。