尽管许多发行版本将Apache httpd用作操作系统支持的软件包,但有时可能需要在这些系统上安装和使用Apache httpd的规范版本,以替换软件包的本地提供的版本。
尽管Apache httpd项目当前没有为各种发行版本创建二进制RPM,但可以从标准的Apache httpd tarball构建自己的二进制RPM还是很容易的。
本文档说明了在支持RPM打包格式的Unix系统下如何构建,安装,配置和运行Apache httpd 2.4。
可以使用以下命令直接从Apache httpd源tarball构建RPM:
rpmbuild -tb httpd-2.4.x.tar.bz2
在构建RPM之前,需要在构建系统上安装相应的“ -devel”软件包,该rpmbuild
命令将自动计算所需的RPM并列出系统上缺少的所有依赖项。构建完成后将不需要这些“ -devel”软件包,并且可以安全地删除它们。
如果成功,将创建以下RPM:
mod_ldap
和mod_authnz_ldap
,并相应依赖于openldap。mod_lua
模块,对lua有相应的依赖性。mod_proxy_html
模块,对libxml2具有相应的依赖性。mod_socache_dc
模块,对distcache具有相应的依赖性。mod_ssl
模块,对openssl的依赖。该httpd
RPM是必要得到一个基本的服务器来运行只有RPM。如下安装:
rpm -U httpd-2.4.x-1.i686.rpm
服务器包含自包含的模块。如果需要,依赖于外部库的模块将作为单独的RPM提供来安装。
默认情况下,服务器的默认配置安装在/etc/httpd
目录下,日志默认写入/var/log/httpd
。默认情况下,在可选/etc/sysconfig/httpd
文件中设置了Web服务器的环境
。
启动服务器,如下所示:
service httpd restart
可以配置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