On this page
将 Apache 与基于 RPM 的系统一起使用(Redhat/CentOS/Fedora)
尽管许多发行版将 Apache httpd 用作 os 支持的软件包,但有时可能需要在这些系统上安装和使用 Apache httpd 的规范版本,以替换软件包的本机提供的版本。
尽管 Apache httpd 项目目前尚未为各种发行版本创建二进制 RPM,但可以从标准的 Apache httpd tarball 构建自己的二进制 RPM 还是很容易的。
本文档说明了在支持 RPM 打包格式的 Unix 系统下如何构建,安装,配置和运行 Apache httpd 2.4.
创建源 RPM
可以将 Apache httpd 源 zipfile 转换为 SRPM,如下所示:
rpmbuild -ts httpd-2.4.x.tar.bz2
Building RPMs
可以使用以下命令直接从 Apache httpd 源 tarball 构建 RPM:
rpmbuild -tb httpd-2.4.x.tar.bz2
在构建 RPM 之前,需要在构建系统上安装相应的“ -devel”软件包,rpmbuild
命令将自动计算所需的 RPM,并将列出系统上缺少的所有依赖项。构建完成后将不需要这些“ -devel”软件包,并且可以安全地删除它们。
如果成功,将创建以下 RPM:
httpd-2.4.x-1.i686.rpm
- 核心服务器和基本模块集。
httpd-debuginfo-2.4.x-1.i686.rpm
- 服务器和所有模块的调试符号。
httpd-devel-2.4.x-1.i686.rpm
- 服务器的头和开发文件。
httpd-manual-2.4.x-1.i686.rpm
- Web Service 器手册。
httpd-tools-2.4.x-1.i686.rpm
- Web 服务器的支持工具。
mod_authnz_ldap-2.4.x-1.i686.rpm
- mod_ldap和mod_authnz_ldap,并相应地依赖于 openldap。
mod_lua-2.4.x-1.i686.rpm
- mod_lua模块,对 lua 有相应的依赖性。
mod_proxy_html-2.4.x-1.i686.rpm
- mod_proxy_html模块,对 libxml2 具有相应的依赖性。
mod_socache_dc-2.4.x-1.i686.rpm
- mod_socache_dc模块,对应于 distcache。
mod_ssl-2.4.x-1.i686.rpm
- mod_ssl模块,相应地依赖于 openssl。
安装服务器
httpd
RPM 是使基本服务器运行所需的唯一 RPM。如下安装:
rpm -U httpd-2.4.x-1.i686.rpm
服务器包含自包含的模块。如果需要,依赖于外部库的模块将作为单独的 RPM 提供来安装。
配置 Apache httpd 的默认实例
默认情况下,服务器的默认配置安装在/etc/httpd
目录下,日志默认写入/var/log/httpd
。默认情况下,在可选的/etc/sysconfig/httpd
文件中设置了 Web Service 器的环境。
如下启动服务器:
service httpd restart
在同一台计算机上配置 Apache httpd 的其他实例
可以配置 Apache httpd 服务器的其他实例,它们在同一台计算机上彼此独立运行。这些实例可以具有独立的配置,并且如果这样配置,则可以作为独立用户运行。
这是通过使 httpd 启动脚本知道其自身名称来完成的。然后,使用该名称查找服务器的环境文件,以及服务器实例的服务器根目录。
要创建一个名为httpd-additional
的其他实例,请按照下列步骤操作:
- 创建指向其他服务器启动脚本的符号链接:
ln -s /etc/rc.d/init.d/httpd /etc/rc.d/init.d/httpd-additional chkconfig --add httpd-additional
- 使用
/etc/sysconfig/httpd
文件作为模板为服务器创建环境文件:
# template from httpd cp /etc/sysconfig/httpd /etc/sysconfig/httpd-additional
# blank template touch /etc/sysconfig/httpd-additional
编辑/etc/sysconfig/httpd-additional
并在OPTIONS
环境变量内传递新服务器实例的服务器根目录。
OPTIONS="-d /etc/httpd-additional -f conf/httpd-additional.conf"
编辑服务器配置文件
/etc/httpd-additional/conf/httpd-additional.conf
,以确保配置了正确的端口和路径。如下启动服务器:
service httpd-additional restart
- 根据需要为每个服务器实例重复此过程。