编译安装httpd-2.4(2)

环境:
Centos6.9

1.下载开发包组:
yum -y install development tools openssl-devel pcre-devel  expat-devel

下载源码包:
 apr-1.6.3.tar.bz2   httpd    依赖的跨平台包
 apr-util-1.6.1.tar.bz2         工具包组
 httpd-2.4.29.tar.bz2 		  httpd源码包



2.解压到当前目录;
tar xvf httpd-2.4.29.tar.bz2 
tar xvf apr-util-1.6.1.tar.bz2
tar xvf apr-1.6.3.tar.bz2 


3.编译安装 apr-1.6.3.tar.bz2   注意:不要安装在本机的apr同目录避免冲突
cd  apr-1.6.3.tar.bz2    
. /configure --prefix=/app/apr

4.编译安装apr-util-1.6.1.tar.bz2      注意:必须制定apr的安装目录
cd apr-util-1.6.1.tar.bz2
 . /configure  --prefix=/app/apr-util --with-apr=/app/apr/


5.编译安装httpd-2.4
cd ../httpd-2.4.29
[root@CentOS6 /app/httpd-2.4.29 67]# ./configure --prefix=/app/httpd24 \
> --enable-so \
> --enable-ssl \
> --enable-cgi \
> --enable-rewrite \
> --with-zlib \
> --with-pcre \
> --with-apr=/app/apr/ \
> --with-apr-util=/app/apr-util/ \
> --enable-modules=most \
> --enable-mpms-shared=all \
> --with-mpm=prefork \
make -j 4 && make instal

6.导出环境变量:
echo 'PATH=/app/httpd24/bin/:$PATH' > /etc/profile.d/httpd24.sh
. /etc/profile.d/httpd24.sh

8.ps aux 查看因为是编译安装默认apache是以daemon用户的身份运行;
创建账号:
useradd -r -s /sbin/nologin  apache
修改配置文件:
vim /app/httpd24/conf/httpd.conf
170 User apache
171 Group apache
wq

重启服务

9.设置开机启动:
确定本机是否有httpd开机自启服务有的话需要停止否则会冲突;
chkconfig --list httpd
chkconfig httpd   On /Off
echo "/app/httpd24/bin/apachectl start" >> /etc/rc.d/rc.local  (免写脚本)

测试:
vim /etc/init.d/httpd(修改启动脚本:建议自己写)
 42 apachectl=/app/httpd24/bin/apachectl
 43 httpd=${HTTPD-/app/httpd24/bin/httpd}
 44 prog=httpd
 45 pidfile=${PIDFILE-/app/httpd24/logs/httpd.pid}
 46 lockfile=${LOCKFILE-/var/lock/subsys/httpd24}
 
编译安装区别改名:
mv httpd httpd24

 添加服务:
## chkconfig --add httpd24

查看:
chkconfig --list

设置开机启动:
chkconfig httpd24 on

总结:方法一与方法二的却别仅仅在于apr与apr-util的安装方式不同.