6.3. 安装和配置 Apache HTTP 服务器

Apache HTTP 服务器必须在已分派的失效转移域或群集中的所有成员上被安装配置。为了使服务能够正确地失效转移,所有运行它的成员上的基本服务器都必须使用相同的配置。下面的例子显示了一个没有包含第三方模块或性能调整的基本 Apache HTTP 服务器安装。

在群集中的所有成员系统上(或失效转移域的成员中),安装 httpd RPM 软件包。例如:

rpm -Uvh httpd-<version>.<arch>.rpm

在一个系统上执行以下任务:

  1. 编辑 /etc/httpd/conf/httpd.conf 配置文件,根据你的配置来定制这个文件。例如:

    • 指定包含 HTML 文件的目录。同时还指定把服务添加到群集配置时的挂载点。该字段只在网站内容的挂载点和 /var/www/html/ 的默认设置不同时才需要。例如:

      DocumentRoot "/mnt/httpdservice/html"
    • 如果脚本目录位于一个非标准的地方,指定包含 CGI 程序的目录。例如:

      ScriptAlias /cgi-bin/ "/mnt/httpdservice/cgi-bin/"
    • 指定在前一步骤中使用的路径,把存取权限设置为该目录的默认权限。例如:

      <Directory /mnt/httpdservice/cgi-bin">
      AllowOverride None
      Options None 
      Order allow,deny 
      Allow from all 
      </Directory>

      可能还需要进行其它改变来微调 Apache HTTP 服务器或添加模块功能。关于设置其它选项的信息,请参阅《红帽企业 Linux 系统管理指南》《红帽企业 Linux 参考指南》

  2. 标准的 Apache HTTP 服务器启动脚本 /etc/rc.d/init.d/httpd 也在群集框架中被用来启动和停止活跃群集成员上的 Apache HTTP 服务器。在配置服务的时候,你可以在「服务」对话框的「用户脚本」字段中指定这个脚本。

  3. 把这个配置文件复制到群集的其它成员上(或失效转移域的成员中,若配置了的话)。

在把服务添加到群集配置之前,请确保 Apache HTTP 服务器目录没有被挂载。然后,在一个成员上,启用群集配置工具来添加服务,如下所示。这个例子假设该服务创建了一个叫做 httpd-domain 的失效转移域。图 6-1显示了用来配置容纳 HTML 文件和 CGI 脚本的共享贮存区和挂载点的「设备」设置。

图 6-1. 配置 Apache HTTP 服务器

  1. 选择「服务」活页标签,点击「新建」「服务」属性对话框就会被显示。

    1. 给服务命名(例如:httpd)。

    2. 「失效转移域」列表中选择 httpd-domain

    3. 「检测间隔」字段中指定一个值。

    4. 「用户脚本」字段中指定 /etc/rc.d/init.d/httpd

    5. 点击「确定」

  2. 「服务」活页标签中选择 httpd 服务,再点击「添加子进程」「添加设备或服务 IP 地址」对话框就会被显示。

    1. 选择「添加设备」并点击「确定」「设备」属性对话框就会被显示。

    2. 「设备特殊文件」字段中输入设备特殊文件名称(如 /dev/hda7)。

    3. 「挂载点」字段中输入挂载点(如 /var/www/html/)。

    4. 「文件系统类型」列表中选择 ext3

    5. 「选项」字段中输入 rw

    6. 确保「强制卸载」被选择,再点击「确定」

  3. 确保 httpd 服务在「服务」活页标签中仍旧被选,然后点击「添加子进程」「添加设备或服务 IP 地址」对话框就会被显示。

    1. 选择「添加服务 IP 地址」,然后点击「确定」「服务 IP 地址」属性对话框就会被显示。

    2. 「IP 地址」字段中指定一个 IP 地址。群集体系使用它来绑定到运行 httpd 服务的群集系统的网络接口上(例如:192.168.26.10)。

    3. 「子网掩码」字段中,把子网掩码指定为 None

    4. 「广播」字段中,把用于群集子网广播的 IP 地址指定为 None

    5. 点击「确定」

  4. 选择「文件」 => 「保存」来保存所做改变。

  5. 要在群集状态工具中启动 Apache HTTP 服务器,突出显示该服务,然后点击「启用」