Filed Under (Note) by a-wei on 05-09-2006

Apache 不僅是 www server,也可以當成 proxy server 使用。

從找到的資料中,發現 Apache 的 Proxy 有兩種模式。

1. Forward Proxy
ProxyRequest On
ProxyVia On

2. Reverse Proxy

Forward Proxy 就是類似 Squid 的 服務模式,而 Reverse Proxy,則是解析 http 網址標頭,導引到目的主機。

如果你有兩台以上的網頁伺服器,那麼就可以用第二種方式,來保護主要的網路伺服器,也就是這篇文章的目的。

這種代理模式又稱之為 R-Proxy,從 Google 可以搜尋到這篇文章 http://www.study-area.org/tips/r-proxy_20030117.txt.

如果你參照這篇文章作,那麼你會發現,要限制連線來源的 ip 位址,一點都不 make sense .

後來發現 ProxyRequest 不可以設成 On ,要設成 Off。

因為一設成 On 就表示 Apache 要當 Forward Proxy 了,這時候如果你不設定連線限制,那麼你的機器可要變成冤大頭了。

以下簡單介紹設定方式:

1. 載入模組
編輯 httpd.conf ,確定這兩個模組有載入。

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so

2. Reverse Proxy 設定
找到

IfModule mod_proxy.c

在裡頭設定要轉的目錄名稱,以及目的位址。

ProxyPass /xxx http://192.168.1.11/
ProxyPassReverse /xxx http://192.168.1.11/

設定好後,apache 重新啟動,接下來打入我們所設定的伺服器網址,再加上 /xxx ,就會連到 192.168.1.11 這台內部的伺服器了。



Post a comment

Name: 
Email: 
URL: 
Comments: