从单一安装运行 IBM® HTTP Server 的多个独立实例。在极少情况下需要运行多个实例,因为虚拟主机之类的功能部件允许单个实例高效地服务许多站点,但在某些情况下这是必需的。例如,如果您需要由不同的管理员来安全地管理站点,那么必须运行不同的实例,并且每个实例都使用自己的配置文件。
开始之前
本主题主要适用于 AIX®、HP-UX、Linux、Solaris 和 Windows 操作系统。在 z/OS® 平台上,install_ihs
命令会为每个实例创建一个单独的目录,而不创建产品的另一个副本。
有关更多信息,请参阅关于配置 IBM HTTP Server 的 z/OS 主题。 在配置多个实例之前,请考虑通过使用虚拟主机和/或让
IBM HTTP Server 侦听不同的地址和端口是否可以解决您的问题。单个实例的优点在于,它使用较少的资源即可与多个实例处理相同的请求。
避免故障: 当您按照这些示例操作时,请将“this_instance”更改为每个实例的唯一名称。
gotcha
过程
- 为每个实例创建一个单独的主配置文件(通常是 httpd.conf 文件)。
最佳实践: 为了减少重复,请将公共伪指令存储在公共文件中,并使用
Include 伪指令将这些公共文件导入到不同的主配置文件中。
bprac
在这些步骤的剩余步骤中,配置文件的名称为 conf/this_instance.conf。 下面是一个实例的配置文件的简单示例:
Listen 10.0.0.1:80
PidFile instance1/httpd.pid
ErrorLog instance1/error.log
CustomLog instance1/access.log common
# Other directives that make this instance behave uniquely
Include conf/common.conf
实际配置文件中包含更多伪指令,以使此实例的行为不同于其他实例。
- 在配置文件中配置端口设置。 您不能将一个侦听端口和侦听 IP 地址组合用于多个实例。请检查每个配置文件中的 Listen 伪指令,并验证这些伪指令是否唯一。有关更多信息,请参阅关于 Apache HTTP Server
的 Listen 伪指令的信息。
- 配置日志记录设置和其他特殊文件。 不能在实例之间共享通常存储在 install_root/logs 目录中的任何文件。对于下列伪指令,每个实例都必须具有唯一的值:
- PidFile
- 适用于所有配置。请参阅有关 Apache HTTP Server 的 PidFile 伪指令的信息。
- ScriptSock
- 适用于启用了 mod_cgid 的非 Windows 配置。
- ErrorLog
- 适用于所有配置。请参阅有关 Apache HTTP Server 的 ErrorLog
伪指令的信息。
- CustomLog 或 TransferLog
- 适用于所有配置。请参阅有关 Apache HTTP Server 的 CustomLog
伪指令或 TransferLog 伪指令的信息。
- SSLCachePortFilename
- 适用于所有启用了 SSL 的非 Windows 配置。请参阅有关 SSLCachePortFilename 伪指令的信息。
- SSLCachePath
- 满足下列所有条件时适用:
- 平台不是 Windows。
- SSL 已启用。
- 未配置 SSLCacheDisable 伪指令。
- 已修改 bin/apachectl 以指定另一个 -d 标志,或者在指定了显式 -d 标志的情况下启动 bin/apachectl。
- -d 标志所指定的目录未包含文件 bin/sidd。
请参阅有关 Apache HTTP Server 的 SSLCachePath 伪指令的信息。请参阅有关 SSLCachePath 伪指令的信息。
- 其他用于指定文件路径的可选伪指令,例如日志记录或跟踪。
![[AIX]](../images/aixlogo.gif)
确保只有一个 IHS 实例启用了快速响应高速缓存加速器 (FRCA) 或 AFPA。 注: 从 V7.0 开始已不推荐使用
FRCA/AFPA,因此不鼓励您使用。不支持
Windows Vista、Windows 2008 或任何更高版本的 Windows 操作系统。
- 启动或停止 IHS 服务器实例。
![[AIX]](../images/aixlogo.gif)
![[HP-UX]](../images/hpux.gif)
![[Linux]](../images/linux.gif)
使用下列命令来启动和停止 IHS:# cd /install_dir
# bin/apachectl -k start -f conf/this_instance.conf
# bin/apachectl -k stop -f conf/this_instance.conf
另外,也可以为每个实例创建一个 apachectl 副本,并更新每个副本中的命令以包括“-f conf/this_instance.conf”。
使用下列命令来设置新的实例:cd \install_dir
bin\Apache.exe -f conf/this_instance.conf -k install -n IHS-this_instance
选择下列其中一个命令来启动和停止 IHS:
有关更多信息,请参阅关于启动和停止 IBM HTTP Server 的主题。