[z/OS]

在 z/OS V2R2 和更高版本的系统上安装和配置 IBM HTTP Server

您可使用 install_ihs 安装程序以在 z/OS® 操作系统上配置 IBM® HTTP Server 实例。 开始使用 IBM HTTP Server 之前,必须按以下过程所述使用 /usr/lpp/ihsa_zos/bin/install_ihs 脚本创建服务器实例。

准备工作

注意: IBM HTTP Server V 9 现在随基本操作系统一起安装在 z/OS V2R2 及更高版本上。 不需要单独进行安装。 您需要使用 /usr/lpp/ihsa_zos/bin/install_ihs 脚本在 /usr/lpp/ihsa_zos 上的预安装位置创建 IBM® HTTP Server 的实例,或者可以使用 IBM Installation Manager执行单独的安装。 有关单独安装的详细信息,请参阅 安装 IBM HTTP Server for WebSphere Application Server for z/OS V2R1 和更低版本。 在任一情况下,在使用 IBM® HTTP Server 之前,请使用 install_ihs 脚本创建 IBM® HTTP Server 的实例。

使用安装程序之前,请检查下列事项:
  • 为 IBM HTTP Server创建系统授权工具 (SAF) 用户标识和组。 有关更多信息,请参阅 执行必需的 z/OS 系统配置

    下列示例假定服务器用户标识为 WWWSERV,服务器组为 WWWGROUP。

  • 选择用于保存服务器实例的配置文件的目录。 此目录有时称为服务器实例的安装目录。 因为该目录包含服务器实例的配置和运行时日志,所以您可能想要为其创建单独的文件系统。
    以下示例假定安装目录为 /etc/websrv1。 请将目录许可权设置为 770,并将目录所有所有权授予服务器用户标识和组:
    mkdir  /etc/websrv1 
    /usr/sbin/mount -f OMVS.SYS1.WEBSRV1.ZFS /etc/websrv1
    chown  WWWSERV:WWWGROUP /etc/websrv1
    chmod 770 /etc/websrv1

有关此任务

以下步骤使用 install_ihs 安装程序在 z/OS 操作系统上安装正在运行的 IBM HTTP Server for z/OS 实例。

过程

  1. 使用运行安装程序的用户标识登录到 z/OS UNIX System Services shell。
    请使用准备工作部分中讨论的服务器用户标识,或者使用用于管理的服务器组中的另一用户标识。 将目录切换到 IBM HTTP Server 产品代码目录:
    cd /usr/lpp/ihsa_zos
  2. 通过指定 umask 022将 umask 值设置为 022

    要验证 umask 值是否设置为 022,请运行不带任何参数的 umask 命令。

  3. 运行 bin/install_ihs 程序以将产品文件安装到安装目录中,执行初始定制,并创建从安装目录到产品目录的符号链接。
    install_ihs installDir serverPort
    • installDir 变量是安装目录的绝对路径,用于保存服务器实例配置。
    • serverPort 变量是 Web 服务器的非 SSL 端口。 如果省略 serverPort 变量,那么缺省值为端口 80。
    以下示例在 /etc/websrv1 目录中为侦听端口 8080 的 Web 服务器创建配置:
    install_ihs /etc/webserv1 8080
    您可以添加更多选项来执行服务器实例的初始定制和设置:
    • 添加 -31 参数以让安装程序创建 IBM HTTP Server的 31 位实例。 仅当 IBM HTTP Server 与 WebSphere Application Server以外的产品结合使用时,才必须使用此参数。 需要 IBM HTTP Server 以 31 位方式运行的产品会记录传递此标志的需求。
      install_ihs -31 /etc/websrv1 8080
    • 添加 -admin 参数以允许 WebSphere Application Server 管理控制台修改 httpd.conf 文件。 ( WebSphere Application Server for z/OS 节点必须与 IBM HTTP Server 实例在同一系统上运行。)
      install_ihs -admin /etc/websrv1 8080
      您还必须使用 SAF 将 WebSphere Application Server 控制区域用户标识添加到 IBM HTTP Server 组。 例如,要将用户 ASCR1 添加至组 WWWGROUP,请输入以下 TSO 命令:
      CONNECT ASCR1 GROUP (WWWGROUP) OWNER (WWWGROUP)
    • 如果由于任何原因, IBM HTTP Server 组不是用于运行 install_ihs 安装程序的用户标识的缺省组,那么可以使用 -group 参数显式命名 IBM HTTP Server 组:
      install_ihs -admin -group IMGROUP /etc/websrv1 8080
    • 从修订包 9.0.0.9开始, IBM HTTP Server 产品代码还在 /usr/lpp/ihsa_zos/plugin 目录中包含 IBM HTTP Server 的 WebSphere Application Server 插件。 从此修订包开始,您可以向安装程序命令添加更多参数以在创建服务器实例时配置插件:
      install_ihs -plugin
                  -wasInstallLocation wasProductDir
                  -wasServerName serverName
                  -wasHostName serverHost
                   installDir serverPort

      -plugin 参数指示要配置 WebSphere Application Server 插件。

      -wasInstallLocation 参数指向 WebSphere Application Server for z/OS 产品代码。 如果未指定,那么系统将使用值 /usr/lpp/WebSphere/V9R0

      如果指定了 -plugin 参数,那么需要 -wasServerName 参数。 此参数提供 Web 服务器在 WebSphere Application Server 配置中的已知名称。

      如果指定了 -plugin 参数,那么需要 -wasHostName 参数,并提供 Web 服务器实例的主机名。

      缺省情况下,插件配置将放在 installDir/plugin/config/serverName/plugin-cfg.xml 文件中,并且 installDir/config/httpd.conf 服务器配置文件将更新为引用 WebSphere Application Server 产品。 您可以在安装程序命令上使用更多选项来更改这些值。 有关更多信息,请输入 install_ihs -help 命令。

      以下示例启动安装程序以创建 Web 服务器实例并配置 WebSphere Application Server 插件。
      install_ihs -plugin
                  -wasInstallLocation /products/WAS90
                  -wasServerName webserver1
                  -wasHostName host2.mycorp.com
                   /etc/websrv1 8080
  4. 可选: 通过多次运行 IBM HTTP Server 安装程序来创建 IBM HTTP Server 的多个实例。

    每次运行安装程序时应指定不同安装目录和(在大多数情况下)不同端口。

结果

执行以下步骤以确认您已在 z/OS 操作系统上成功安装了产品的可运行版本:

  1. 使用服务器用户标识登录 OMVS Shell。
  2. 将目录切换到服务器实例的安装目录:
    cd /etc/websrv1
  3. 运行 apachectl -vapachectl configtest 命令以验证是否安装了该程序。
    以下样本输出是一个成功安装程序的示例:
    # bin/apachectl -v
    Server version: IBM_HTTP_Server/9.0.0.0 (Unix)
    Server built:   Jan  27 2016 12:38:02
    # bin/apachectl configtest
    Syntax OK
    实际的版本字符串和构建日期会有所不同。
  4. 启动 IBM HTTP Server。
    bin/apachectl start
  5. 通过使用您在运行安装程序时指定的非 SSL 端口号或缺省端口 80 ,将 Web 浏览器指向 z/OS 系统的 IP 名称或地址。

    如果安装成功,那么将显示 IBM HTTP Server 缺省主页。

  6. 通过运行以下命令停止 IBM HTTP Server :
    bin/apachectl stop

下一步做什么?

  • 如果要将 IBM HTTP Server 与 WebSphere Application Server 配合使用,并且在运行 install_ihs 安装程序时未配置插件,请根据 WebSphere Application Server for z/OS IBM Knowledge Center 中的指示信息来安装和配置 IBM HTTP Server 的 WebSphere Application Server 插件。 如果 IBM HTTP Server 是修订包 9.0.0.9 或更高版本,那么可以在 /usr/lpp/ihsa_zos/plugin 目录中使用 WebSphere Application Server 插件,而不是使用 IBM Installation Manager单独进行安装。
  • 创建 JCL 编目过程以启动服务器实例。 如果要使用管理控制台来启动和停止 IBM HTTP Server,那么必须执行此步骤。 有关更多信息,请参阅 使用 JCL 过程在 z/OS上启动 IBM HTTP Server 。
    要点: JCL 编目过程中的 PARM 值限制为 100 个字符。 因为 PARM 值包含安装目录 (&DIR),所以总长度可能超过 100 个字符的限制。 选择安装目录时,请考虑路径名长度。 如果安装目录路径名太长,那么 JCL 中可能会使用以符号方式链接至原始安装目录路径名的较短已命名路径。
  • 编辑 IBM HTTP Server 配置文件 httpd.conf以满足您组织的需求。 有关此文件和受支持的 Apache 模块的更多信息,请参阅 配置 IBM HTTP Server
    以下更改是您可以对配置文件进行的典型更改:
    • 编辑 DocumentRoot 伪指令以指向站点的 Web 页面。
    • 通过在 httpd.conf 文件末尾添加以下伪指令来启用 SSL 支持:
      LoadModule ibm_ssl_module modules/mod_ibm_ssl.so
      Listen 443
      <VirtualHost *:443>
      SSLEnable
      </VirtualHost>
      SSLDisable
      Keyfile /saf saf-keyring-name
      Keyfile 伪指令可以改为使用 Keyfile /path/to/keyfile.kdb的语法指定 HFS 文件名。 .sth 文件必须与 .kdb 文件在同一目录中。 有关更多信息,请参阅 使用 SSL 通信保护安全安全套接字层 (SSL) 伪指令
    • 验证是否已启用 mod_status 模块,如以下示例中所示:
      LoadModule status_module modules/mod_status.so
      <IfModule mod_status.c>
      ExtendedStatus On
      </IfModule>
      ...
      <IfModule mod_status.c>
      <Location /server-status>
          SetHandler server-status
          Require all denied
      #   To allow access from a specific IP:
      #   Require ip 192.168.1
      </Location>
      </IfModule>
      如果要限制对特定 IP 地址的访问,请取消注释样本 mod_access Require 伪指令,但修改 IP 参数以指定正确的 IP 地址。
    • 可将 Web 服务器安装到可供综合系统中多个主机共享读/写的 HFS。
      对于使用 AF_UNIX 套接字的 Web 服务器的组件,有一些特殊配置需求。 共享 R/W 的 HFS 不支持 AF_UNIX 套接字。 因此,配置伪指令用于将 AF_UNIX 套接字放在运行 Web 服务器的主机所拥有的文件系统上。
      • 如果 mod_ibm_ssl 已装入,请使用 SSLCachePortFilename 伪指令来指定由本地主机拥有的文件系统上的文件。
      • 如果 mod_fastcgi 已装入,请使用 FastCGIIpcDir 伪指令来指定由本地主机拥有的文件系统上的目录。
  • 如果要将 IBM HTTP Server 与 WebSphere Application Server 配合使用,并在创建服务器实例时指定 -admin ,那么可以在初始安装后添加对管理控制台的支持。
    • 运行 bin/enable_admin 脚本,以设置从管理控制台修改 httpd.conf 文件时需要的许可权。
    • 使用 SAF 将控制区域用户标识添加到 IBM HTTP Server 组。 请参阅以下示例:
      CONNECT ASCR1 GROUP (WWWGROUP) OWNER (WWWGROUP)
    • 创建编目 JCL 过程以启动和停止服务器。 有关更多信息,请参阅 使用 JCL 过程在 z/OS上启动 IBM HTTP Server 。