一种更复杂的 Web Server 配置是,服务器在内联网部署中托管几个虚拟服务器。例如,假设您有三个内部站点,员工可在这些站点中查找其他用户的电话号码、查看校园地图以及跟踪发送到信息服务部门的请求的状态。以前(在本示例中),这些站点托管在三个不同的计算机中,这些计算机映射为名称 phone.example.com、maps.example.com 和 is.example.com。
为了将硬件和管理开销减少到最低程度,用户可以将这三个站点合并为计算机 example.com 上的一个 Web 服务器。可以使用以下两种方法进行此设置: 使用基于 URL 主机的虚拟服务器或使用单独的 HTTP 侦听器。两者都有明显的优点和缺点。
使用基于 URL 主机的虚拟服务器的内部网托管
尽管基于 URL 主机的虚拟服务器易于设置,但它们具有以下缺点:
在此配置中支持 SSL 需要使用通配符证书进行非标准设置。
基于 URL 主机的虚拟服务器不能与传统的 HTTP 客户机一起使用。
您也可以设置基于 IP 地址的配置,每个地址一个 HTTP 侦听器:
使用单独的 HTTP 侦听器的内部网托管
基于 IP 地址的虚拟服务器的优点包括:
它们可以与不支持 HTTP/1.1 Host 标头的旧客户机一起使用。
提供 SSL 支持比较简便。
缺点包括:
它们要求更改主机上的配置(实际或虚拟网络接口的配置)。
它们不能缩放至具有上千个虚拟服务器的配置。
两种配置都要求为三种名称设置名称到地址的映射。在基于 IP 地址的配置中,每个名称都映射为不同的地址。必须对主机进行设置,才能接收所有这些地址上的连接。在基于 URL 主机的配置中,所有名称都可以映射为同一地址(计算机最初具有的地址)。
具有多个 HTTP 侦听器的配置所带来的性能增益可能最少,因为服务器不必查明传入请求的地址。但是由于其他接收方线程,使用多个 HTTP 侦听器也将导致额外开销(内存和调度)。