В этом ответе мы описываем:
Когда был опубликован этот ответ, основной версией была Apache 2.5
Я рекомендую сделать это в тестовой среде
. Я тестировал его в системе debian minbase wheezy
. Для arch linux
имена пакетов должны быть аналогичными, и вместо apt-get
, pacman
следует использовать. Сценарий configure
все равно запросит все недостающие зависимости сборки.
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
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
echo "LoadModule systemd_module modules/mod_systemd.so" >> /usr/local/apache2/conf/httpd.conf
/usr/local/apache2/bin/apachectl -M
Если вы хотите использовать mod_systemd в более старой версии Apache, вы можете попытаться скомпилировать Apache 2.5
с подписями других версий.
apachectl -v
https://httpd.apache.org/download.cgi
tar xf httpd-version.tar.gz
cp httpd-version/include/ap_mmn.h ~/trunk/include/
cd ~/trunk
make
find . -name mod_systemd.so -exec cp {} destination/ \;
Не удалось получить желаемый результат с помощью echo "$(du -ksh $i)"
. Переключил echo
на printf
и получил желаемый результат. Не могу это объяснить, но тем не менее, работает.