1、安装依赖
httpd-2.4需要较新版本的apr(1.4以上)和apr-util,因此需要事先对其进行升级。升级方式有两种,一种是通过源代码编译安装,一种是直接升级rpm包。这里选择使用编译源代码的方式进行。
# rpm -q apr
apr-1.3.9-5.el6_2.x86_64
1.1 安装apr:
[root@web1 download]# tar -xf apr-1.4.8.tar.gz
[root@web1 download]# cd apr-1.4.8
[root@web1 apr-1.4.8]# ./configure --prefix=/usr/local/apr
[root@web1 apr-1.4.8]# make
[root@web1 apr-1.4.8]# make install
1.2 安装apr-util
[root@web1 apr-1.4.8]# cd ..
[root@web1 download]# tar xf apr-util-1.5.2.tar.bz2
[root@web1 apr-util-1.5.2]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
[root@web1 apr-util-1.5.2]# make
[root@web1 apr-util-1.5.2]# make install
编译说明:
--prefix指定安装路径;
--with-apr指定apr的安装路径,apr-util依赖于apr
2、编译安装httpd
2.1 安装依赖:
[root@web1 download]# yum -y install pcre-devel openssl-devel
2.2 编译安装
root@web1 download]# cd ..
root@web1 download]# tar xf httpd-2.4.6.tar.bz2
root@web1 download]# cd httpd-2.4.6
[root@web1 httpd-2.4.6]# ./configure \
--prefix=/usr/local/apache \
--sysconfdir=/etc/httpd \
--enable-so \
--enable-rewirte \
--enable-ssl \
--enable-cgi \
--enable-cgid \
--enable-modules=most \
--enable-modules-shared=most \
--enable-mpms-shared=all \
--with-apr=/usr/local/apr \
--with-apr-util=/usr/local/apr-util[root@web1 httpd-2.4.6]# make
[root@web1 httpd-2.4.6]# make install
编译说明:
--prefix=/usr/local/apache :指定安装目标路径
--sysconfdir=/etc/httpd :指定配置文件安装位置
--enable-so :支持动态共享模块,如果没有这个模块PHP将无法与apache结合工作
--enable-rewirte :支持URL重写
--enable-ssl :启用支持ssl
--enable-cgi :启用支持cgi
--enable-cgid :启用支持带线状图形的CGI脚本 MPMs
--enable-modules=most :安装大多数模块
--enable-modules-shared=most :安装大多数共享模块
--enable-mpms-shared=all :支持全部多道处理方式
--with-apr=/usr/local/apr :指定apr路径
--with-apr-util=/usr/local/apr-util :指定apr-util路径
3、配置启动脚本:
cp build/rpm/httpd.init /etc/init.d/httpd //使用init脚本管理httpd
chmod 755 /etc/init.d/httpd //增加执行权限
chkconfig --add httpd //添加httpd到服务开机启动
4、其他配置:
为httpd执行文件创建PATH:
vi /etc/profile.d/httpd.sh #添加如下一行
export PATH=$PATH:/usr/local/apache/bin
为日志文件创建软连接:
ln -fs /usr/local/apache/logs /var/log/httpd ##设置软链接以适应init脚本
至此,就可以使用service httpd start 命令启动httpd了。