安装和配置企业级 Web 服务器(5)

启动和停止 IBM HTTP Server

安装 IBM HTTP Server 和 GSKit 软件之后,就要在系统上启动 IBM HTTP Server 进程了。本节解释如何手工启动和停止 IBM HTTP Server 和可选的 IBM HTTP 管理服务器,以及如何在系统引导过程中自动启动这些服务器。

注意:在 UNIX 或 Linux 系统上启动 IBM HTTP Server 之前,必须创建用来运行它的组。这个组称为 nobody,在 IBM HTTP Server 配置文件中指定,可以用系统使用的软件包创建它。例如,在 Linux 系统上,作为 root 用户或通过 sudo 命令执行 addgroup nobody 命令,就可以添加 nobody 组。

  启动 IBM HTTP Server

启动 IBM HTTP Server 涉及两个实用程序。必须使用 apachectl 实用程序启动 IBM HTTP Server 本身,如果要使用 IBM HTTP 管理服务器管理 IBM HTTP Server 的话,还要使用 adminctl 实用程序。

    apachectl 实用程序

apachectl 实用程序是用于在 UNIX 和 Linux 系统上启动、停止和重新启动基于 Apache 的 Web 服务器的标准实用程序。如果在默认位置安装 IBM HTTP Server,那么此实用程序位于 /opt/IBM/HTTPServer/bin。

作为 root 用户或通过 sudo 命令执行以下命令,从而使用 apachectl 实用程序启动 IBM HTTP Server:

 /opt/IBM/HTTPServer/bin/apachectl start  

启动 IBM HTTP Server 之后,可以在浏览器中按系统的主机名或 loopback 地址连接系统,以此确认 IBM HTTP Server 正在运行。应该会看到与 图 8 相似的初始页面。


    图 8. IBM HTTP Server 的默认页面

安装和配置企业级 Web 服务器

    adminctl 实用程序

注意:只有在还需要使用 WebSphere Application Server 的情况下,才需要启动 IBM HTTP 管理服务器。只能从 WebSphere Application Server 管理控制台联系 IBM HTTP Server 管理接口,不能从标准的 Web 浏览器联系它。

adminctl 实用程序是用于启动、停止和重新启动 IBM HTTP 管理服务器的标准实用程序。如果在默认位置安装 IBM HTTP Server,那么此实用程序位于 /opt/IBM/HTTPServer/bin。

作为 root 用户或通过 sudo 命令执行以下命令,从而使用 adminctl 实用程序启动 IBM HTTP 管理服务器:

 /opt/IBM/HTTPServer/bin/adminctl start  

启动 IBM HTTP 管理服务器之后,可以使用 WebSphere Application Server 管理控制台连接系统(在默认情况下使用端口 8008)。

    系统启动集成

在系统上安装 Web 服务器之后,通常希望在启动系统时自动启动 Web 服务器。在 Windows 平台上安装 IBM HTTP Server 时,在 图 5 所示的窗口中,可以把服务器和管理服务器定义为在启动系统时自动启动的 Windows 服务。但是,UNIX 和 Linux 安装程序没有提供相似的系统启动集成选项。因此,您必须亲自把 IBM HTTP Server 集成到 UNIX 和 Linux 系统的启动过程中。

所有 UNIX 和 Linux 系统都使用一种系统机制,它会在系统引导时执行一系列 shell 脚本。在大多数 UNIX 和 Linux 系统上,按照 SysVInit(即 System V Init,这是指 UNIX 的一个老版本)系统启动机制指定的方式组织这些脚本。按照这种机制,系统的主要启动脚本都放在 /etc/init.d 中,在系统引导时执行的针对特定操作级(称为 runlevel)的脚本放在 /etc/rcrunlevel.d 目录中,它们是链接到 /etc/init.d 目录中的脚本的符号链接。Ubuntu Linux 系统使用另一种启动机制。

注意:下面解释如何把 apachectl 实用程序集成到系统启动过程中。如果要使用 WebSphere Application Server 管理控制台来管理 IBM HTTP Server,那么还要把 adminctl 实用程序集成到系统启动过程中。这可以用相同的步骤完成,但是需要使用不同的启动脚本名(比如 ibm-http-admin)和对应的符号链接,还要把脚本中的 apachectl 变量设置为 /opt/IBM/HTTPServer/bin/adminctl。

    创建 SysVInit 脚本

要想为 IBM HTTP Server 创建 SysVInit 脚本,只需复制 Apache Web Server 的现有脚本并根据自己的 IBM HTTP Server 系统修改它。步骤如下:

1.访问 sample Apache2 startup script at TuxDocs.org,然后把显示的脚本复制到文本编辑器中。
    2.把脚本中的以下代码:

apachectl=/usr/local/apache/bin/apachectl httpd=/usr/local/apache/bin/httpd  

修改为:

apachectl=/opt/IBM/HTTPServer/bin/apachectl httpd=/opt/IBM/HTTPServer/bin/httpd  

3.把文件保存到自己的系统上并把它复制到 /etc/init.d 中(作为 root 用户或通过 sudo 命令),把它命名为 ibm-http。
    4.作为 root 用户或通过 sudo 命令,使用以下命令设置文件的可执行权限:

chmod 755 /etc/init.d/ibm-http  

5.在 /etc/rc5.d 中,使用以下命令创建此文件的符号链接:

ln -s /etc/init.d/ibm-http /etc/rc5.d/S85ibm-http ln -s /etc/init.d/ibm-http /etc/rc5.d/K15ibm-http  

在下一次关闭系统时,前面创建的 K15ibm-http 符号链接会在关闭过程中自动停止 IBM HTTP Server。在下一次启动系统时,S85ibm-http 符号链接会在引导过程中自动启动 IBM HTTP Server。

创建 Ubuntu Upstart 脚本

Ubuntu Linux 发行版使用一种与 SysVInit 不同的启动机制。Ubuntu 启动机制称为 Upstart(参见 参考资料),这是一种为 Ubuntu 创建的非常新的事件驱动的启动机制,但是 FedoraRed HatCentOS 等其他发行版也将采用这种机制。Upstart 由于支持并发性和响应系统事件而广受欢迎。

目前,Upstart 的实现与传统的 SysVInit 模型兼容。在 下载 中可以找到一个简单的 Upstart 模块,可以把它放在 /etc/init.d 目录中并用它启动 IBM HTTP Server。

下载此文件之后,执行以下步骤:

1.把文件保存到自己的系统上并把它复制到 /etc/init.d 中(作为 root 用户或通过 sudo 命令),把它命名为 ibm-http。
    2.作为 root 用户或通过 sudo 命令,使用以下命令设置文件的可执行权限:

chmod 755 /etc/init.d/ibm-http  

3.在 /etc/rc2.d 目录中,使用以下命令创建此文件的符号链接:

ln -s /etc/init.d/ibm-http /etc/rc2.d/S91ibm-http ln -s /etc/init.d/ibm-http /etc/rc2.d/K15ibm-http  

在下一次关闭系统时,前面创建的 K15ibm-http 符号链接会在关闭过程中自动停止 IBM HTTP Server。在下一次启动系统时,S91ibm-http 符号链接会在引导过程中自动启动 IBM HTTP Server。


    结束语

您已经在系统上安装和集成了 IBM HTTP Server。现在可以执行添加内容、定制服务器配置等操作。为 Web 服务器提供内容超出了本教程的范围。但是,下面这些信息对于填充和运行 IBM HTTP Server 会有帮助:

●在 IBM HTTP Server 中,静态 Web 内容的默认位置是 /opt/IBM/HTTPServer/htdocs。
    ●IBM HTTP Server 的配置文件位于 /opt/IBM/HTTPServer/conf。IBM HTTP Server 的主要服务器配置文件是 httpd.conf。IBM HTTP 管理服务器的主要配置文件是 admin.conf。
    ●如果在用服务器显示内容时遇到了麻烦,应该在 IBM HTTP Server 日志中寻找关于错误的信息。这些日志文件位于 /opt/IBM/HTTPServer/logs。此目录中的 access_log 文件包含每次尝试访问 IBM HTTP Server 的相关信息。error_log 文件包含在访问 IBM HTTP Server 或请求内容期间发生的错误的相关信息。
    ●因为 IBM HTTP Server 基于 Apache Web Server,所以可以通过关于配置 Apache Web Server 2.0 的任何资料了解详细的配置建议和相关信息。
    无论要交付什么内容、通过 Web 访问什么类型的数据或采用哪种体系结构,Web 服务器都是企业 Web 系统的核心。IBM HTTP Server 是一种与 Apache 兼容的具有良好支持的标准 Web 服务器,也是 WebSphere Application Server 的关键组件,它为任何 Web 系统提供一个出色的起点。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wyxwdf.html