標籤:apache web 安裝apache
小生部落格:http://xsboke.blog.51cto.com
小生 Q Q:1770058260
-------謝謝您的參考,如有疑問,歡迎交流
一、 Apache2.4新特性
1. 新增模組
-
Mod_proxy_fcgi:提供fcgi代理
Mod_ratelimit:限制使用者頻寬
Mod_request:過濾客戶機請求
Mod_remoteip:匹配用戶端的IP
2. 新特性
-
Mpm(工作模式):支援工作模式在apache運行時更改
但是要開啟這種特性,在編譯安裝要啟用這三種功能:--enable-mpms-shared=all --with-mpm=event
完善了event模式
支援使用自訂變數
基於FQDN的虛擬機器主機不再需要NameVirtualHost指令
增強版的運算式分析器
支援非同步讀寫
毫秒層級的keepalivetimeout
二、 Apache2.4.23安裝
1. 安裝包簡介
-
httpd-2.4.23.tar.gz:主程式包
apr-1.5.2.tar.gz:可移植運行庫,用於支援httpd2.4
apr-util-1.5.4.tar.gz:apr的關聯包
zlib-1.2.8.tar.gz:支援壓縮演算法
pcre-8.39.tar.gz:支援Regex
openssl-1.0.1u.tar.gz:為了支援加密傳輸,centos7.2預設安裝1.0.1e版本,而apache2.4需要1.0.1u及以上版本支援
2. 安裝
650) this.width=650;" src="https://s3.51cto.com/wyfs02/M00/91/AD/wKioL1j3afHCmGW3AACRJ3_OAR4043.jpg" title="image001.jpg" alt="wKioL1j3afHCmGW3AACRJ3_OAR4043.jpg" />
安裝apr和apr-util
650) this.width=650;" src="https://s2.51cto.com/wyfs02/M00/91/AE/wKiom1j3ahLAUr9_AABO88vV-Rc240.jpg" style="float:none;" title="image002.jpg" alt="wKiom1j3ahLAUr9_AABO88vV-Rc240.jpg" />
650) this.width=650;" src="https://s4.51cto.com/wyfs02/M01/91/AE/wKiom1j3ahOwU5XDAABwkaPHnOY077.jpg" style="float:none;" title="image003.jpg" alt="wKiom1j3ahOwU5XDAABwkaPHnOY077.jpg" />
安裝zlib
650) this.width=650;" src="https://s4.51cto.com/wyfs02/M02/91/AD/wKioL1j3ainx7wZOAABNu2OqoB0885.jpg" title="image004.jpg" alt="wKioL1j3ainx7wZOAABNu2OqoB0885.jpg" />
安裝pcre
650) this.width=650;" src="https://s3.51cto.com/wyfs02/M00/91/AF/wKiom1j3ajyitbOmAABK3hUYwaw169.jpg" title="image005.jpg" alt="wKiom1j3ajyitbOmAABK3hUYwaw169.jpg" />
安裝openssl
650) this.width=650;" src="https://s5.51cto.com/wyfs02/M00/91/AF/wKiom1j3akmRAF5LAABQ69xqBHY576.jpg" title="image006.jpg" alt="wKiom1j3akmRAF5LAABQ69xqBHY576.jpg" />
因為舊版本的openssl命令還存在,為了防止以後可能用到,暫時不刪除,將舊版本的opensll執行
指令碼名稱更改,然後將新版本的opensll指令碼連結到/usr/bin/
650) this.width=650;" src="https://s3.51cto.com/wyfs02/M01/91/AE/wKioL1j3alqQ1Vk5AACBb11ZZWA266.jpg" title="image007.jpg" alt="wKioL1j3alqQ1Vk5AACBb11ZZWA266.jpg" />
安裝apache2.4.23
650) this.width=650;" src="https://s4.51cto.com/wyfs02/M02/91/AE/wKioL1j3an2gJdP9AACtWYW6p5c900.jpg" title="image009.jpg" alt="wKioL1j3an2gJdP9AACtWYW6p5c900.jpg" />
-
--enable-so:支援動態載入模組(即開啟DSO支援)
--enable-rewrite:支援地址修正
--enable-ssl:支援ssl加密
--with-ssl=/usr/local/openssl:指定ssl安裝位置
--enable-cgi:啟用cgi
--enable-cgid: 為了支援event和worker
--enable-modules=most:明確指明要靜態編譯到httpd二進位檔案的模組,<MODULE-LIST>為空白格分隔的模組名列表、all或者most,all表示包含所有模組,most表示包含大部分常用模組
--enable-mods-shared=most:明確指明要以DSO(動態)方式編譯的模組,<MODULE-LIST>為空白格分隔的模組名列表、all或者most,all表示包含所有模組,most表示包含大部分模組
--enable-mpms-shared=all:啟用MPM所有支援的模式,這樣event、worker、prefork就會以模組化的方式安裝,要用哪個就在 httpd.conf 裡配置就好了。
--with-mpm=event:指定啟用的mpm模式,預設使用enevt模式,在apache的早期版本2.0預設prefork,2.2版本是worker,2.4版本是event.
--with-pcre=/usr/local/pcre:支援pcre
--with-z=/usr/local/zlib:使用zlib壓縮庫
--with-apr=/usr/local/apr:指定apr的安裝路徑
--with-apr-util=/usr/local/apr-util:指定apr-util的安裝路徑
--enable-expires:為用戶端瀏覽器提供緩衝功能
--enable-deflate:提供對內容的壓縮傳輸編碼支援
650) this.width=650;" src="https://s5.51cto.com/wyfs02/M00/91/AE/wKioL1j3asryZNS1AAAU9xgZ5Jw839.png" title="image010.png" alt="wKioL1j3asryZNS1AAAU9xgZ5Jw839.png" />
3. 最佳化httpd程式執行路徑
軟連結
650) this.width=650;" src="https://s1.51cto.com/wyfs02/M02/91/AF/wKiom1j3aueQslEQAAApJJ65EJY279.jpg" title="image011.jpg" alt="wKiom1j3aueQslEQAAApJJ65EJY279.jpg" />
修改httpd.conf設定檔,設定ServerName的值
650) this.width=650;" src="https://s4.51cto.com/wyfs02/M02/91/AE/wKioL1j3aveTDWG6AABn_HiJhGg569.jpg" title="image012.jpg" alt="wKioL1j3aveTDWG6AABn_HiJhGg569.jpg" />
配置httpd的指令檔
650) this.width=650;" src="https://s4.51cto.com/wyfs02/M00/91/AF/wKiom1j3awrgmn_fAAA8JROs9Ls538.jpg" title="image013.jpg" alt="wKiom1j3awrgmn_fAAA8JROs9Ls538.jpg" />
650) this.width=650;" src="https://s2.51cto.com/wyfs02/M01/91/AF/wKiom1j3azLhZ-9vAAEuKPHNCRk797.jpg" title="image014.jpg" alt="wKiom1j3azLhZ-9vAAEuKPHNCRk797.jpg" />
將httpd服務添加為系統服務,並且啟動
650) this.width=650;" src="https://s1.51cto.com/wyfs02/M02/91/AE/wKioL1j3a13xVTlcAACGBX-1YVk389.jpg" title="image015.jpg" alt="wKioL1j3a13xVTlcAACGBX-1YVk389.jpg" />
查看服務狀態報錯,提示lynx命令找不到,使用yum安裝即可
安裝lynx後依舊報錯:您沒有在此伺服器上訪問/伺服器狀態的許可權,如
650) this.width=650;" src="https://s5.51cto.com/wyfs02/M01/91/AE/wKioL1j3a26gQBWzAABRV9l_jzI113.jpg" title="image016.jpg" alt="wKioL1j3a26gQBWzAABRV9l_jzI113.jpg" />
解決辦法
首先修改httpd主設定檔
650) this.width=650;" src="https://s4.51cto.com/wyfs02/M02/91/AF/wKiom1j3a37TES4KAAAiCeFNCgE240.png" title="image017.png" alt="wKiom1j3a37TES4KAAAiCeFNCgE240.png" />
然後修改模版設定檔
/usr/local/http-2.4.23/conf/extra/ httpd-info.conf
650) this.width=650;" src="https://s3.51cto.com/wyfs02/M00/91/AE/wKioL1j3a5mhLBf2AACBlzjM51A221.jpg" title="image018.jpg" alt="wKioL1j3a5mhLBf2AACBlzjM51A221.jpg" />
然後修改httpd的指令檔/etc/init.d/httpd,查看服務狀態資訊的時候使用的地址為本地迴環地
址(IP地址)
650) this.width=650;" src="https://s4.51cto.com/wyfs02/M01/91/AF/wKiom1j3a6viaFohAAGoniGUJlk568.jpg" title="image019.jpg" alt="wKiom1j3a6viaFohAAGoniGUJlk568.jpg" />
最後開啟防火牆例外
650) this.width=650;" src="https://s5.51cto.com/wyfs02/M00/91/AF/wKiom1j3a7_TSqQ5AABTQ3Gqkd0542.jpg" title="image020.jpg" alt="wKiom1j3a7_TSqQ5AABTQ3Gqkd0542.jpg" />
三、 關於apache2.4新特性:DSO
當apache在安裝後,突然需要某個模組,但是這個模組沒有安裝;這時候我們有倆種方法解決,第一種就是卸載apache,然後在重裝的時候添加此模組,第二種方法就是使用MPM新特性DSO,支援apache在運行時裝載模組
1. 首先解壓apache源碼包,並且找到模組的存放位置
2. 然後使用命令“apxs -c -I -a 模版名”安裝模版
-c編譯,-i安裝,-a在安裝完成後,自動將配置參數添加到apache的設定檔中
3.有些模版使用上面的命令可能裝不上,這時使用命令“apxs -c -i -a -I /usr/local/zlib/include 模版名”安裝即可
4. 查看模版的命令
Apachectl -l :只查看編譯到httpd的二進位模版
Apachectl -M:查看httpd已經安裝的模版,status為靜態,shared是動態
Apachectl -t -D DUMP_MODULES:查看httpd已經安裝的模版
apache2.4:apache的安裝及其新特性