在centos6上编译安装2.4最新源码包,和7上有点差别;
编译安装http2.4,需要依赖apr和apr-utils至少1.4版本以上(包含),而6上默认或yum安装版本是1.3,7上默认就是1.4.
因此6上安装最新http2.4需要先编译安装apr和apr-utils至少1.4版本。
下面我这里有两种在6上编译安装2.4的方法,建议用第二种;
我这里只写和7编译不同的部分,其它的部分编译前后工作过程,请参见https://www.jianshu.com/p/ff7c61c357d9
一、准备工作
下载源码包:
mkdir /root/src
cd /root/src
wget http://www-eu.apache.org/dist//apr/apr-1.6.3.tar.gz
wget http://www-eu.apache.org/dist//apr/apr-util-1.6.1.tar.gz
wget http://www-us.apache.org/dist//httpd/httpd-2.4.29.tar.gz
解压
ls | xargs -n1 tar xf
编译环境准备,准备开发包:
开发环境包组: Development Tools
yum groupinstall "Development Tools"
相关依赖包:pcre-devel,openssl-devel ,expat-devel
yum install pcre-devel openssl-devel expat-devel
二、编译方法
第一种:
安装apr-1.6+
如果编译出现cannot remove `libtoolT': No such file or directory
用vim 打开 configure,把 $RM “$cfgfile” 那行删除掉;亦或者不用管,只是警告,不是特别的报错。
cd apr-1.6.3
./configure --prefix=/usr/local/apr
make && make install
安装apr-util-1.6+
cd ../apr-util-1.6.1
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make && make install
编译安装httpd-2.4
cd ../httpd-2.4.29
./configure --prefix=/usr/local/httpd24 \
--enable-so \
--enable-ssl \
--enable-cgi \
--enable-rewrite \
--with-zlib \
--with-pcre \
--with-apr=/usr/local/apr/ \
--with-apr-util=/usr/local/apr-util/ \
--enable-modules=most \
--enable-mpms-shared=all \
--with-mpm=prefork
make -j 4 && make install
第二种:
cp -av apr-util-1.6.1 httpd-2.4.27/srclib/apr-util
cp -av apr-1.6.3 httpd-2.4.27/srclib/apr
cd httpd-2.4.29/
./configure \
--prefix=/usr/local/httpd24 \
--enable-so \
--enable-ssl \
--enable-cgi \
--enable-rewrite \
--with-zlib \
--with-pcre \
--with-included-apr \
--enable-modules=most \
--enable-mpms-shared=all \
--with-mpm=prefork
make && make install
三、服务启动脚本
之前博客是自己写的服务脚本,这里使用编译后自动生成的脚本
cp /usr/local/httpd24/bin/apachectl /etc/rc.d/init.d/httpd
chkconfig –add httpd
chkconfig –list httpd
其它的编译前后没做的不走在之前博客有,这里不一一写了。
网友评论