作为最流行的Web服务器,Apache已经很久没有用重大更新来吸引用户的目光了。2012年8月16日,Apache终于进行了自2005年12月以来的首次重大更新,发布Apache HTTP Server 2.4.3。
Apache 2.4提供了很多性能方面的提升,包括支持更大流量、更好地支持云计、利用更少的内存处理更多的并发等。除此之外,新版Apache的提升还包括性能提升、内存利用、异步I/O的支持、动态反向代理设置、与时间驱动的Web服务器相当或更好的性能、更强大的处理资源分配能力,更便捷的缓存支持以及可定制的高速服务器和代理等。其它的功能还包括更简单的错误分析、更灵活的设置项、更强大的验证机制和更完整的文档。
Apache 2.4的主要目标之一是大幅改进性能,在这款刚刚发布的Web服务器中,我们发现它也从竞争对手Nginx处借鉴了不少,增加了不少对高性能的支持。它对缓存、代理模块、会话控制、异步读写支持等都进行了改进。
Apache服务器项目管理委员会和Apache基金会主席Jim Jagielski表示,他们希望终端用户能真正地看到性能进步,Apache 2.4比许多以速度见长的Web服务器更快,例如Nginx。
Apache 2.4.3安装配置步骤如下:
1、安装基础包
yum install gcc gcc-c++ zlib zlib-devel openssl openssl-devel libtool -y
2、安装apr
cd apr ./configure --prefix=/usr/local/apr/ && make && make install
3、安装apr-util
cd ../apr-util ./configure --prefix=/usr/local/apr-util/ --with-apr=/usr/local/apr/ && make && make install
4、安装pcre
cd pcre-8.20 ./configure --prefix=/usr/local/pcre && make && make install
5、安装httpd 2.4.3
编译必须把 apr,apr-util 的源文件放到 apache2.4.3 源码的 srclib 目录下,并修改 apr 源码目录为apr,apr-util 源码目录为 apr-util
cp -rf apr-1.4.6 ./httpd-2.4.3/srclib/apr cp -rf apr-util-1.5.1 ./httpd-2.4.3/srclib/apr-util cd httpd-2.4.3 ./configure --prefix=/usr/local/apache2 --enable-mods-shared=all --enable-deflate --enable-speling --enable-cache --enable-file-cache --enable-disk-cache --enable-mem-cache --enable-ssl --with-ssl=/usr/local/openssl/ --enable-rewrite --enable-so --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util/ --with-pcre=/usr/local/pcre --with-included-apr make make install
可能出现的错误:make时出现server/.libs/libmain.a(exports.o):(.data+0xcfc): undefined reference to `apr_os_uuid_get’,解决办法:
cd srclib/apr; make cd srclib/apr-util; make
再退回 apache 的源码目录重新 make
6、安装Tomcat-connectors(mod_jk.so模块)
tar zxvf tomcat-connectors-1.2.37-src.tar.gz cd tomcat-connectors-1.2.37-src/native/ ./configure --with-apxs=/usr/local/apache2/bin/apxs --with-java-home=/usr/local/jdk make && make install
检查/usr/local/apache2/modules下是否有mod_jk.so ,如果没有就复制过去。
注意conf/httpd.conf文件中ServerName xxx.xxx.com:80需要改为ServerName 127.0.0.1:80,可以使用apactrl -t进行语法分析
7、优化Apache
cp /usr/local/apache2/bin/apachectl /etc/init.d/httpd vim /etc/init.d/httpd #编辑此服务,将前三行修改为 #!/bin/bash # chkconfig: 35 85 15 # description:Apache httpd service httpd restart chkconfig --add httpd chkconfig --level 35 httpd on