每个网站都有一个描述性名称,并且可以支持一个或多个主机头名。一台服务器上宿主多个网站的单位通常使用主机头,这是因为此方法使其能够不必使用每个站点的唯一 IP 地址来创建多个网站。
由于万维网发布服务(WWW 服务)必须分配非页面缓冲池内存来管理每个 IP 地址的端点,使用主机头的好处是可以避免由于使用唯一 IP 地址标识多个网站而引起的潜在性能降低。
当客户端请求到达服务器时,IIS 使用在 HTTP 头中通过的主机名来确定客户端请求的站点。如果该站点用于专用网络上,则主机头可以是 Intranet 站点名,例如 SupIntrant。如果该站点用于 Internet 上,则主机名必须是公共的可用域名系统 (DNS) 名(例如 support.microsoft.com),同时必须使用一个已授权的 Internet 名称机构进行名称注册。
下表总结了使用主机头来区分多个网站的优缺点。
优点 | 缺点 |
---|---|
可以宿主多个站点而无需给每个站点都指派唯一的 IP 地址。 | 要在提供安全 Internet 服务的多个网站上使用主机头,必须在一台独立的服务器上宿主 HTTPS 服务,使用 IP 地址标识 HTTPS 站点,并且重定向安全性服务请求到该服务器。这是必需的,因为 HTTPS 通过安全套接字层 (SSL) 加密主机头名称,这样同一台服务器上宿主 SSL 服务的网站无法对主机头信息进行解释。 |
对实际的所有用户透明。 | |
可以产生比指派给每个站点唯一 IP 地址更好的性能,因为万维网 (WWW) 服务不需要给由唯一 IP 地址标识的各个站点分配非页面缓冲池内存。 |
对于多数情况,推荐使用主机头来区分同一台服务器上的多个网站。使用这种方法时,请仔细考虑默认网站显示的内容。如果用户试图通过不支持 HTTP 1.1 的旧浏览器联接您的站点,并且在服务器上启用默认的网站但是不包括克服旧浏览器限制的程序,那么用户将被定向到 IP 地址指定的默认网站。那可能不是用户希望访问的站点。默认的网站可能包含一个脚本,该脚本支持在不支持 HTTP 1.1 的浏览器中使用主机头名。
注意 如果浏览器接收到一个目前已停止的站点请求,则用户将被重定向到默认网站。由于这个原因,Internet 服务提供商 (ISP) 通常将其自己的主页设为默认值。如果用户无法访问某个主机头标识的站点,并且没有启用默认网站,则用户浏览器将显示“主机没有找到”的错误。