Apache-2.4.x源码安装
Apache-2.4.x源码安装
官方网站:
环境:
centos7
httpd-2.4
一.安装编译依赖库
yum -y install gcc gcc++ zlib zlib-devel
二.卸载自带httpd
for package in $(rpm -qa|grep httpd)
do
done
三.安装
1.apr
tar -xvf apr-1.5.2.tar.bz2 -C /usr/local/src
cd
/usr/local/src/apr-1.5.2
./configure --prefix=/opt/apache/apr && make -j4
&& make install
2.apr-util
tar -xvf apr-util-1.5.4.tar.bz2 -C /usr/local/src
cd /usr/local/src/apr-util-1.5.4
./configure --prefix=/opt/apache/apr-util
--with-apr=/opt/apache/apr && make -j4 && make
install
3.pcre
tar -xvf pcre-8.37.tar.bz2 -C /usr/local/src
cd /usr/local/src/pcre-8.37
./configure --prefix=/opt/apache/pcre && make -j4
&& make install
4.httpd
tar -xvf httpd-2.4.17.tar.bz2 -C /usr/local/src
cd /usr/local/src/httpd-2.4.17
./configure \
--prefix=/opt/apache/httpd \
--enable-rewrite \
--enable-so \
--enable-headers \
--enable-expires \
--enable-modules=most \
--enable-deflate \
--enable-rewrite=shared \
--enable-deflate=shared \
--enable-expires=shared \
--enable-static-support \
--with-mpm=worker
\
--with-apr=/opt/apache/apr \
--with-apr-util=/opt/apache/apr-util \
--with-pcre=/opt/apache/pcre
make -j4 && make install
四.配置
1.init脚本
a.httpd
cp /usr/local/src/httpd-2.4.17/build/rpm/httpd.init
/etc/init.d/httpd
chmod +x /etc/init.d/httpd
sed -i "/httpd=/i HTTPD=/opt/apache/httpd/bin/httpd"
/etc/init.d/httpd
sed -i
"/httpd=/i PIDFILE=/opt/apache/httpd/logs/httpd.pid"
/etc/init.d/httpd
sed -i "/CONFFILE=/ s#/etc/httpd#/opt/apache/httpd#g"
/etc/init.d/httpd
b.htcacheclean
cp /usr/local/src/httpd-2.4.17/build/rpm/htcacheclean.init
/etc/init.d/htcacheclean
chmod +x /etc/init.d/htcacheclean
sed -i "/htcacheclean=/i
HTTPD=/opt/apache/httpd/bin/htcacheclean" /etc/init.d/htcacheclean
sed -i "/htcacheclean=/i CACHEPATH=/opt/apache/httpd/cache-root"
/etc/init.d/htcacheclean
sed -i
"/^pidfile=/c pidfile=/opt/apache/httpd/logs/${prog}.pid"
/etc/init.d/htcacheclean
mkdir -p /opt/apache/httpd/cache-root
2.logrotate
cp /usr/local/src/httpd-2.4.17/build/rpm/httpd.logrotate
/etc/logrotate.d/
sed -i "1c /opt/apache/httpd/logs/*.log {"
/etc/logrotate.d/httpd.logrotate
五.启服务
chkconfig httpd on
chkconfig htcacheclean on
service httpd start
service htcacheclean start
补充:ubuntu14.04
apt-get -y install build-essential make openssl libgnutls-openssl27 libssl-dev
./configure --prefix=/opt/apache --with-mpm=worker --enable-mods-shared=all --enable-so --enable-most --enable-max
make -j2 && make install
echo /opt/apache/lib >> /etc/ld.so.conf
ldconfig
cp /opt/apache/bin/apachectl /etc/init.d/httpd
service httpd start
update-rc.d httpd defaults