Win2003实现Web虚拟网站操作篇

虚拟网站的创建方式

    IIS 6.0 在一台服务器上可以宿主多个网站。例如,无需使用三个不同的服务器来宿主 www.ghq.com、study.ghq.com 和 test.ghq.com 三个网站,我们可以将上述网站安装在同一个服务器上。合并网站可以节约硬件资源、节省空间和降低能源成本。

    要确保用户的请求能到达正确的网站,必须为服务器上的每个站点配置唯一的标识。要执行此操作,必须至少使用三个唯一标识符(主机头名称、IP 地址和唯一 TCP 端口号)中的一个来区分每个网站。同一服务器上主控的网站可以使用以下的唯一标识符进行区分(表1)。

 
表1

 

    通过更改这三个标识符中的一个,可以为多个网站创建唯一的标识,而无需为每个站点安装一个专用的服务器。也可以为每个站点创建唯一的主目录并且将内容存储在本地服务器或远程网络共享上。这样,每个网站都将作为一个独立的实体或虚拟服务器。

    要标准化唯一标识每个服务器上网站的方法,最好使用主机头名称。通过优化缓存和路由查找,使用每服务器上方法可以提高性能。相反,将主机头、唯一 IP 地址或非标准端口号任意组合使用以标识同一服务器上的多个网站却会降低服务器上所有网站的性能。

    1、使用多个 IP 地址创建多个站点

一些安全服务器配置要求在同一台服务器上使用唯一 IP 地址来区分每个网站。IIS 使我们能够将网站配置成在所有可用的 IP 地址或单个 IP 地址上进行监听。如果在同一台服务器上使用多个 IP 地址来区分不同的站点,则必须配置 IIS 来给每个站点指派唯一的 IP 地址。

    下表2总结了使用 IP 地址来区分多个站点的优缺点。

 
表2

 

    由于在同一台服务器上给多个网站指派大量的唯一 IP 地址会降低性能,因此这种方法主要用于标识宿主安全套接字层 (SSL) 或传输层安全 (TLS) 服务的服务器上的多个站点。

    使用主机头和唯一 IP 地址的组合来标识同一服务器上的多个网站会降低缓存查找和路由查找的性能。为了优化性能,用一种方法标准化每台服务器,标准 HTTP 网站更适合使用主机头。

    2、使用主机头名创建多个站点

    每个网站都有一个描述性名称,并且可以支持一个或多个主机头名。一台服务器上宿主多个网站的单位通常使用主机头,这是因为此方法使其能够不必使用每个站点的唯一 IP 地址来创建多个网站。

    由于万维网发布服务(WWW 服务)必须分配非页面缓冲池内存来管理每个 IP 地址的端点,使用主机头的好处是可以避免由于使用唯一 IP 地址标识多个网站而引起的潜在性能降低。

    当客户端请求到达服务器时,IIS 使用在 HTTP 头中通过的主机名来确定客户端请求的站点。如果该站点用于专用网络上,则主机头可以是 Intranet 站点名,例如 testIntrant。如果该站点用于 Internet 上,则主机名必须是公共的可用域名系统 (DNS) 名(例如 test.ghq.com),同时必须使用一个已授权的 Internet 名称机构进行名称注册。

    下表3总结了使用主机头来区分多个网站的优缺点。

 
表3

 

    对于多数情况,推荐使用主机头来区分同一台服务器上的多个网站。使用这种方法时,仔细考虑默认网站显示的内容。如果用户试图通过不支持 HTTP 1.1 的旧浏览器联接您的站点,并且在服务器上启用默认的网站但是不包括克服旧浏览器限制的程序,那么用户将被定向到 IP 地址指定的默认网站。那可能不是用户希望访问的站点。默认的网站可能包含一个脚本,该脚本支持在不支持 HTTP 1.1 的浏览器中使用主机头名。

    如果浏览器接收到一个目前已停止的站点请求,则用户将被重定向到默认网站。由于这个原因,Internet 服务提供商 (ISP) 通常将其自己的主页设为默认值。如果用户无法访问某个主机头标识的站点,并且没有启用默认网站,则用户浏览器将显示“主机没有找到”的错误。

    3、使用端口创建多个站点

   虽然不推荐使用产品服务器,但可以使用非标准 TCP 端口号来创建用于站点开发和测试目的的唯一网站标识符。您可以通过创建网站标识(该标识包括 TCP/IP 地址或名称,并附带有非标准 TCP 端口号)来达到此目的。标准网站将默认的 TCP 端口 80 用于 HTTP 连接,将默认的 TCP 端口 443 用于安全 HTTPS 连接。由于 TCP/IP 端点是用 IP 地址(或相应名称)和端口号的组合来定义的,而使用非标准端口号配置网站可以给每个站点创建唯一的端点(或标识)。

    如果使用非标准 TCP 端口号来标识网站,则用户无法通过标准名或 URL 来访问站点。另外,用户必须知道指派给网站的非标准 TCP 端口号,以及在其 Web 浏览器地址栏中附加网站的名称或 IP 地址。

    下表4总结了使用端口号来区分多个网站的优缺点。
 

    例如,要访问名为 GhqIntranet 的专用网站,该网站的 IP 地址是 192.168.1.68,指派给非标准 TCP 端口 8080 的服务是 HTTP 服务,那么用户必须在其 Web 浏览器中输入 http://ghqintranet:8080 或 http://192.168.1.68:8080 来访问该站点。因此,对于多数 Internet 或 Intranet 站点来说,使用端口号来标识网站不是一个可行的方法。

一、IP地址法

    一般情况下,一块网卡只设置了一个IP地址。如果我们为这块网卡绑定多个IP地址,每个IP地址对应一个Web站点,那么同样可以实现“一机多站”的目的。

    假定www.ghq.com、study.ghq.com 和 test.ghq.com 三个网站的IP地址绑定为192.168.1.67、192.168.1.68和192.168.1.69,并且在服务器的同一块网卡上。

    点击“开始”→“控制面板”→“网络连接”→“本地连接”(图1),点击“属性”调出“本地连接属性”面板,选择“Internet协议(TCP/IP)”,点击“属性”调出“Internet协议(TCP/IP)属性”面板,点击下方的“高级”调出“高级TCP/IP设置”面板。在IP地址栏下面列出了网卡已设定的IP地址(192.168.1.68)和子网掩码,点击[添加]按钮,在弹出的对话框中填上新的IP地址(如192.168.1.67,192.168.1.69,注意不能与其他机器的IP地址重复),子网掩码与原有的相同(如255.255.255.0)。然后依次[确定],就完成了多个IP地址的绑定(图2).
二、主机头法

    在不更改TCP端口和IP地址的情况下,同样可以实现“一机多站”,这里我们需要使用“主机头名”来区分不同的站点。

    所谓“主机头名”,实际上就是指www.ghq.com、study.ghq.com和test.ghq.com的网址,因此要使用“主机头法”实现“一机多站”,就必须先进行DNS设置。首先我们在“开始”→“管理工具”→“DNS”(DNS\JSXXZX_GHQ,图35)中 “正向查找区域”新建www.ghq.com、study.ghq.com和test.ghq.com三个区域,如图36所示。具体的操作步骤这里就不多说了。在DNS中设置www.ghq.com、study.ghq.com和test.ghq.com三个网址,将它们都指向惟一的IP地址192.168.1.67