Apache官方說:php
與Apache 2.2.x相比,Apache 2.4.x提供了不少性能方面的提高,包括支持更大流量、更好地支持雲計算、利用更少的內存處理更多的併發等。除此以外,還包括性能提高、內存利用、異步I/O的支持、動態反向代理設置、與時間驅動的Web服務器至關或更好的性能、更強大的處理資源分配能力,更便捷的緩存支持以及可定製的高速服務器和代理等。其它的功能還包括更簡單的錯誤分析、更靈活的設置項、更強大的驗證機制和更完整的文檔。html
Apache服務器項目管理委員會和Apache基金會主席Jim Jagielski表示,他們但願終端用戶能真正地看到性能進步,Apache 2.4.x比許多以速度見長的Web服務器更快,例如 Nginx。linux
apache-2.2與新出的apache-2.4安裝不一樣的地方在於,2.4版的已經不自帶apr庫,因此在安裝apache-2.4以前,須要下載apr。apache
所需源碼包vim
/usr/local/src/Apache-2.4.6/apr-1.4.6.tar.gz
/usr/local/src/Apache-2.4.6/apr-util-1.4.1.tar.gz
/usr/local/src/Apache-2.4.6/httpd-2.4.6.tar.gz緩存
安裝Apache依賴庫bash
#安裝 apr服務器
cd /usr/local/src/Apache-2.4.6 tar -xzvf ./apr-1.4.6.tar.gz cd ./apr-1.4.6 mkdir /usr/local/apr ./configure --prefix=/usr/local/apr make && make install
#安裝 apr-util併發
cd /usr/local/src/Apache-2.4.6 tar -xzvf ./apr-util-1.4.1.tar.gz cd ./apr-util-1.4.1 mkdir /usr/local/apr-util ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config make && make install
#安裝 pcre異步
cd /usr/local/src/Apache-2.4.6 tar -xzvf ./pcre-8.33.tar.gz cd ./pcre-8.33 mkdir /usr/local/pcre ./configure --prefix=/usr/local/pcre --with-apr=/usr/local/apr/bin/apr-1-config make && make install
安裝 Apache2.4.6
#切換到apache源碼目錄
cd /usr/local/src/Apache-2.4.6 tar -xzvf ./httpd-2.4.6.tar.gz cd ./httpd-2.4.6
#生成configure
./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre --enable-so --enable-deflate=shared --enable-expires=shared --enable-ssl=shared --enable-headers=shared --enable-rewrite=shared --enable-static-support --with-mpm=prefork
#編譯
make && make install
編譯參數解釋:
--prefix=/usr/local/apache :指定安裝目錄
--with-apr=/usr/local/apr : apr庫
--with-apr-util=/usr/local/apr-util :apr-util庫
--with-pcre=/usr/local/pcre : pcre庫
--enable-so : 容許運行時加載DSO模塊(注意:so模塊需靜態編譯)
--enable-deflate=shared : 將deflate模塊編譯爲DSO
--enable-expires=shared : 將expires模塊編譯爲DSO
--enable-ssl=shared : 將ssl模塊編譯爲DSO
--enable-headers=shared : 將headers模塊編譯爲DSO
--enable-rewrite=shared : 將rewrite模塊編譯爲DSO
--enable-static-support : 使用靜態鏈接(默認爲動態鏈接)編譯全部二進制支持程序
--with-mpm=prefork : 使用prefork形式的mpm
更詳細的編譯參數解釋:http://lamp.linux.gov.cn/Apache/ApacheMenu/programs/configure.html
cp ./build/rpm/httpd.init /etc/init.d/httpd #使用init腳本管理httpd chmod 755 /etc/init.d/httpd #增長執行權限 chkconfig --add httpd #添加httpd到服務項 chkconfig --level 2345 httpd on #設置開機啓動 chkconfig --list httpd #查看是否設置成功 mv /etc/httpd /etc/httpd_old #移走舊的httpd文件夾 ln -s /usr/local/apache /etc/httpd #創建httpd的軟連接, #到時候,Apache的配置文件路徑爲 /etc/httpd/conf/httpd.conf,其實真實路徑爲 /usr/local/apache/conf/httpd.conf ln -sf /usr/local/apache/bin/httpd /usr/sbin/httpd #設置軟連接以適應init腳本 ln -sf /usr/local/apache/bin/apachectl /usr/sbin/apachectl rm -rf /var/log/httpd/ ln -s /usr/local/apache/logs /var/log/httpd groupadd apache #添加apache用戶組及用戶 useradd -g apache -s /usr/sbin/nologin apache chown -R apache:apache /usr/local/apache
修改init命令文件
主要是修改文件中pidfile參數的值(進程文件指向)
vim /etc/init.d/httpd
把其中的
pidfile=${PIDFILE-/var/run/${prog}.pid}
修改成
pidfile=${PIDFILE-/usr/local/apache/logs/${prog}.pid}
配置防火牆,開啓80端口
vim /etc/sysconfig/iptables
#添加以下規則到22端口這條規則的下面便可
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
#重啓防火牆
service iptables restart # 或 /etc/init.d/iptables restart
啓動Apache
service httpd start # 或 /etc/init.d/httpd start
延伸閱讀:
CentOS6.x編譯安裝LAMP(2):編譯安裝 Apache2.2.25
CentOS6.x編譯安裝LAMP(2):編譯安裝 Apache2.4.6
CentOS6.x編譯安裝LAMP(3):編譯安裝 MySQL5.5.25
CentOS6.x編譯安裝LAMP(4):編譯安裝 PHP5.2.17
CentOS6.x編譯安裝LAMP(4):編譯安裝 PHP5.3.27
PHP5不從新編譯,如何安裝自帶的未安裝過的擴展,如soap擴展?