httpd2.4版本的新特性

1,MPM支持运行为DSO机制;以模块形式按需加载
2,event MPM生产环境可用
3,异步读写机制
4,支持每模块及每目录的单独日志级别定义
5,每请求相关的专用配置
6,增强版的表达式分析式
7,毫秒级持久连接时长定义
8,基于FQDN的虚拟主机不需要NameVirutalHost指令新指令,AllowOverrideList
9,支持用户自定义变量

1,下载Apache的安装包以及APR安装包

httpd2.4源码包
wget http://mirror.bit.edu.cn/apache//httpd/httpd-2.4.39.tar.bz2
APR源码包
wget http://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-1.7.0.tar.bz2
APR-util源码包
wget http://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-util-1.6.1.tar.bz2

2,解压源码包,并将ARP包拷贝到httpd的解压包中

#需要把APR目录移动到httpd解压目录中的srclib目录中
mv apr-1.7.0 httpd-2.4.39/srclib/apr
mv apr-util-1.6.1 httpd-2.4.39/srclib/apr-util

3,添加预启动环境

yum install pcre-devel apr-devel apr-util-devel openssl-devel

4,检查编译环境,并添加编译选项

mkdir /app/
./configure --prefix=/app/httpd24 \
--enable-so \
--enable-ssl \
--enable-cgi \
--enable-rewrite \
--with-zlib \
--with-pcre \
--enable-modules=most \
--enable-mpms-shared=all \
--with-mpm=prefork \
--with-included-apr

5,编译并安装httpd

make && make install && echo "Compiled!!!"

6,创建用户,并修改启动进程的用户及用户组

useradd -r -s /sbin/nologin apache
vim /app/httpd24/conf/httpd.conf
......
User apache
Group apache
......

7,增加环境变量,并设置开机自启动

echo 'PATH=/apps/httpd24/bin:$PATH' > /etc/profile.d/httpd.sh
echo "/apps/httpd24/bin/apachectl start" >> /etc/rc.d/rc.local
chmod +x /etc/rc.d/rc.local