web服務器反向代理 reverse proxy

代理服務器來接受外部的鏈接請求,而後將請求轉發給內部網絡上的服務器,並將從服務器上獲得的結果返回給外部的請求鏈接的客戶端,此時代理服務器對外就表現爲一個服務器。

反向代理通常做用:
1:減輕源服務器負載
2:保障源服務器安全
3:對源服務器進行負載均衡(Load Balance)。


通常反向代理置於源服務器的前端,配備大容量的內存和高速磁盤,緩存客戶的請求,因此反向代理又稱爲服務器加速(Server accelerate)。源服務器通常再也不和客戶直接通信,當客戶請求沒有緩存的內容或者動態內容時,反向代理向源服務器發送請求,而後把迴應轉發給客 戶,在這種狀況下,反向代理服務器一般要爲一個請求同時維護兩個會話。和普通的代理不一樣,反向代理通常只代理一臺或者有限的幾臺服務器,對於客戶而言,反 向代理服務器對於他們就至關於源服務器,對於源服務器而言,反向代理服務器一般就是惟一的客戶,由於通常客戶不和源服務器直接通訊。典型狀況下,源服務器 對於客戶或者客戶對於源服務器,都是不可見的。

反向代理服務器位於本地WEB服務器和外部網絡之間,以下圖所示:



當用戶瀏覽器發出一個HTTP請求時,經過域名解析將請求定向到反向代理服務器(若是要實現多個WEB 服務器的反向代理,須要將多個WEB服務器的域名都指向反向代理服務器)。由反向代理服務器處理器請求。反向代理通常只緩存可緩衝的數據(好比html網 頁和圖片等),而一些CGI腳本程序或者ASP.NET/JSP之類的程序不緩存。它根據從WEB服務器返回的HTTP頭標記來緩衝靜態頁面。有四個最重要HTTP頭標 記:

    * Last-Modified: 告訴反向代理頁面什麼時間被修改
    * Expires: 告訴反向代理頁面什麼時間應該從緩衝區中刪除
    * Cache-Control: 告訴反向代理頁面是否應該被緩衝
    * Pragma: 告訴反向代理頁面是否應該被緩衝.

參考:
http://www.it118.org/Specials/321869dd-98cb-431b-b6d2-82d973cd739d/df396365-696a-47c4-86ed-76272a237597.htm
相關文章
相關標籤/搜索