我正在安裝 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)。