我正在安装 Apache 模块mod_systemd。我正在使用 Arch Linux。
我不知道从哪里开始以及如何开始。
答案1
在这个答案中,我们描述:
- 如何下载并编译Apache trunk版本(这是第一个带有mod_systemd)。
- 如何使用旧版本的签名编译 Apache。
当这个答案发布时,主干版本是Apache 2.5
下载并编译Apache trunk版本
我建议在testing environment
.我已经在debian minbase wheezy
系统上测试过了。对于arch linux
包名称应该相似,而不是使用apt-get
, 。无论如何,pacman
该脚本都会提示所有缺少的构建依赖项。configure
安装构建依赖项(debian minbase wheezy 示例)
apt-get install subversion
apt-get install autoconf
apt-get install libtool
apt-get install python
apt-get install libexpat1-dev
apt-get install libpcre3-dev
apt-get install libsystemd-daemon-dev
apt-get install g++
apt-get install make
下载apache开发源码
mkdir trunk
cd trunk
svn co http://svn.apache.org/repos/asf/httpd/httpd/trunk ./
svn co http://svn.apache.org/repos/asf/apr/apr/trunk srclib/apr
配置阿帕奇
./buildconf
./configure --enable-systemd
构建并安装
make
make install
启用 mod_systemd
echo "LoadModule systemd_module modules/mod_systemd.so" >> /usr/local/apache2/conf/httpd.conf
检查启用的模块
/usr/local/apache2/bin/apachectl -M
使用旧版本的签名编译 Apache
如果你想使用mod_systemd在旧版本的 Apache 中,您可以尝试Apache 2.5
使用其他版本的签名进行编译。
检查您拥有的 Apache 版本
apachectl -v
下载您的 Apache 版本的源代码
https://httpd.apache.org/download.cgi
解压其内容
tar xf httpd-version.tar.gz
将签名文件复制到主干版本文件夹中
cp httpd-version/include/ap_mmn.h ~/trunk/include/
使用其他版本的签名编译主干版本
cd ~/trunk
make
将 mod_systemd 复制到任何您想要的位置
find . -name mod_systemd.so -exec cp {} destination/ \;
答案2
您可以简单地使用 AUR 中的 apache25(以及 php-apache25,如果您需要 PHP)。