標籤:apache mod_proxy 請求轉寄 連接埠映射 反向 Proxy
/** * CentOS-6.4-minimal版中Apache-2.2.29配置請求轉寄 * ---------------------------------------------------------------------------------------------------------------------- * 請求轉寄,請求重新導向,連接埠轉寄,連接埠映射,網域名稱轉寄,網域名稱反向 Proxy,請求代理等等這一類的需求,都可以通過本文的配置方式來實現 * 不過,[通過本文的方式將請求轉寄給Tomcat伺服器],與,[apache整合tomcat],是兩個概念 * 前者所有的資源都由tomcat處理,後者只有動態資源由tomcat處理(像js,css,html等靜態資源由apache處理) * 關於Apache與Tomcat的整合,詳見http://blog.csdn.net/jadyer/article/details/39613523 * 本文建立在源碼安裝Apache-2.2.29基礎上,安裝過程詳見http://blog.csdn.net/jadyer/article/details/39583879 * ---------------------------------------------------------------------------------------------------------------------- * 安裝Apache時,可能並沒有編譯載入很多的模組,不過幸好Apache預設都將mod_so.c模組編譯進來,這就可以實現動態載入模組了 * 載入方式就是,將模組的so檔案放到apache/modules/目錄,並修改apache/conf/httpd.conf載入對應模組,再重啟apache即可 * ---------------------------------------------------------------------------------------------------------------------- * 添加請求轉寄模組 * 1)[[email protected] ~]# cd /app/software/httpd-2.2.29/modules/proxy/ * [[email protected] proxy]# /app/apache/bin/apxs -c -i -a mod_proxy.c proxy_util.c * [[email protected] proxy]# /app/apache/bin/apxs -c -i -a mod_proxy_http.c proxy_util.c * 2)修改/app/apache/conf/httpd.conf檔案 * 取消注釋Include conf/extra/httpd-vhosts.conf * 3)修改/app/apache/conf/extra/httpd-vhosts.conf檔案 * 使用#號注釋掉原有的兩個<VirtualHost/>節點,並增加以下內容(如果需要多個跳轉,可以加入多個VirtualHost) * <VirtualHost *:80> * ServerName www.jadyer.com * ErrorLog logs/www.jadyer.com_error_log * CustomLog logs/www.jadyer.com_access_log common * ProxyPreserveHost On * ProxyRequests Off * ProxyPass / http://192.168.0.104:8080/ * ProxyPassReverse / http://192.168.0.104:8080/ * </VirtualHost> * 4)重啟apache即可 * ---------------------------------------------------------------------------------------------------------------------- * 解釋說明 * 1)/app/apache/是Apache的安裝目錄,/app/software/httpd-2.2.29/是Apache的源碼目錄 * 2)-c 執行編譯操作 * -i 執行安裝操作(它可以將產生的so檔案自動放到/app/apache/modules/目錄中) * -a 在/app/apache/conf/httpd.conf檔案中自動增加一個LoadModule以啟用此模組,若已存在此LoadModule則取消其注釋直接啟動該模組 * 3)實際上就是在/app/apache/modules/目錄中產生mod_proxy.so和mod_proxy_http.so兩個檔案 * 再保證/app/apache/conf/httpd.conf檔案中存在以下兩行LoadModule,以啟用該模組 * LoadModule proxy_module modules/mod_proxy.so * LoadModule proxy_http_module modules/mod_proxy_http.so * 最後再開啟虛擬機器主機配置,並增加映射資訊,即可 * ---------------------------------------------------------------------------------------------------------------------- * @create Sep 28, 2014 10:00:23 AM * @author 玄玉<http://blog.csdn.net/jadyer> */
CentOS-6.4-minimal版中Apache-2.2.29配置請求轉寄