网络服务器如何知道您要访问哪个网站?

时间:2011-12-29 23:13:21

标签: http web

Apache有一种名为VirtualHosts的东西 您可以通过这种方式对其进行配置,即使您使用相同的IP,当您访问example.com时会获得与example2.com不同的站点。
HTTP请求看起来像这样:

GET /index.html HTTP/1.0
[some more]

服务器如何知道您正在尝试访问www.example.com或www.example2.com?

2 个答案:

答案 0 :(得分:3)

除了GET行之外,浏览器还会发送许多标题。其中一个标头是Host标头,它指定请求所针对的主机。

一个简单的示例请求可能是:

GET /index.html HTTP/1.0
Host: example.com

这表示浏览器需要http://example.com/index.html处的内容,而不是http://example2.com/index.html处的内容。

更多信息:

答案 1 :(得分:0)

IIS也有这个,我相信它是指主机头重定向。

http数据包标头包含服务器用于确定要提供的网站的目标主机名。更多阅读:http://www.it-notebook.org/iis/article/understanding_host_headers.htm