第八十四章 将 Web 应用程序与远程 Web 服务器结合使用 - 虚拟主机概述
虚拟主机概述
虚拟主机是一种通过公共 Web
服务器在一个或多个实例上透明地提供应用程序的方法。每个服务器安装似乎都作为单独的 Web
服务器运行。
虚拟主机设置中的差异因素可能是以下之一:
Web
服务器IP
地址 — 托管Web
服务器的服务器通过两个IP
地址公开。例如:
123.123.123.1 == www.serverA.com
123.123.123.2 == www.serverB.com
Web
服务器端口 — 此方法对于测试不同的配置非常有用,尽管在使用非标准TCP
端口(80
以外的TCP
端口)的情况下,它涉及在请求中包含端口号。例如:
Web Server TCP Port 80 == www.serverA.com
Web Server TCP Port 81 == www.serverB.com
- 路径——实现虚拟主机的首选方式。您注册这两个名称,它们会转换为
Web
服务器的单个物理IP
地址。例如:
www.serverA.com == 123.123.123.1
www.serverB.com == 123.123.123.1
无论选择哪种方式,请在 Web Gateway
配置中为每个 IRIS
安装设置一个命名插槽(不需要与 IRIS
实例名称相同)。 Web
网关配置(针对每个服务器)指向的超级服务器端口非常重要。
例如:
www.serverA.com
www.serverB.com
两者均由单个 Web
服务器安装提供服务。
可以实现包括所有三种服务器的混合的服务器。从浏览器的角度来看,选项 1
和 3
是相同的。您可以将每个虚拟主机配置为拥有自己的文档根目录等。
要将虚拟主机概念扩展到 CSP
,假设您希望通过两个虚拟主机但在不同的 IRIS
实例上运行相同的 Web
应用程序。例如,一个站点用于测试,另一个站点用于生产。
www.serverA.com/csp/login.csp ==> irisA
www.serverB.com/csp/login.csp ==> irisB
Web
应用程序对 IRIS
服务器的访问通过 Web
网关应用程序访问配置选项进行控制。通常,定义以下两个条目:
/
/csp
IRIS
服务器的名称与以下应用程序路径定义相关联:
/ (Default Server == irisA)
/csp (Default Server == irisA)
Web
网关允许扩展此配置以包含访问应用程序所通过的虚拟主机的名称。
/ (Default Server == irisA)
/csp (Default Server == irisA)
//www.serverA.com/csp (Default Server == irisA)
//www.serverB.com/csp (Default Server == irisB)
然后,可以为 www.serverA.com/csp
和 www.serverB.com/csp
配置单独的 IRIS
服务器,如上所示。通过//引入服务器名称,如图所示。
适用现行继承规则。例如,如果请求 www.serverA.com/xxx/yyy.csp
,则最终使用为 /
定义的 IRIS
服务器,除非为 serverA
定义最终默认值,如下所示:
/ (Default Server == irisL)
/csp (Default Server == irisL)
//www.serverA.com/ (Default Server == irisL)
//www.serverA.com/csp (Default Server == irisA)
//www.serverB.com/csp (Default Server == irisB)
注意:Web Gateway
配置中指定的服务器不一定是虚拟的。例如,可以配置单个 NSD
安装来支持多个真正的 Apache
安装,并为每个安装定义一组不同的 IRIS
服务器。此外,可以配置每个 Apache
服务器以支持许多虚拟主机。
Web
网关通过 CGI
环境变量 SERVER_NAME
标识应用程序的主机。