天天看點

【架構】正向代理和反向代理

前言

     小編最近學習Nginx反向代理的知識,主要學到一些基礎性的理論,具體結合項目去了解會非常到位。

學習内容導圖   

  下面是自己在學習過程中,總結的一張導圖,多少會有一些不全面和了解不透徹的地方,希望以後在深入學習和應用中,有進一步的認識。

【架構】正向代理和反向代理

正向代理和反向代理

一、是什麼

1.正向代理概念

(1)正向代理類似一個跳闆機,代理通路外部資源。

(2)舉例說明:如果我想連接配接一個網站,但是沒有權限通路,這時我通過連接配接一個代理伺服器,前提是我必須知道正向代理伺服器的IP位址、端口,然後代理伺服器從我無法通路的網站中請求内容後傳回給我。

(3)總結說明:正向代理是一個位于用戶端和原始伺服器(origin server)之間的伺服器,為了從原始伺服器取得内容,用戶端向代理發送一個請求并指定目标(原始伺服器),然後代理向原始伺服器轉交請求并将獲得的内容傳回給用戶端。用戶端必須要進行一些特别的設定才能使用正向代理。

【架構】正向代理和反向代理

2.反向代理概念

(1)用戶端無知代理伺服器的存在,反向代理對外是透明的,通路者不知自己通路的是一個代理伺服器,因為用戶端不要任何配置就可以通路;

(2)反向代理運作方式:以代理伺服器接受Internet上的連接配接請求,将請求轉發給内部網絡上的伺服器,并将從伺服器上得到的結果傳回給internet上請求連接配接的用戶端,此時代理伺服器對外表現為一個伺服器。

二、實際用途

1.正向代理用途

(1)通路原來無法通路的資源;

(2)可以做緩存,加速通路資源;

(3)對用戶端通路授權,上網進行認證;

(4)代理可以記錄使用者通路記錄(上網行為管理),對外隐藏使用者資訊。

2.反向代理用途

(1)保證内網安全,可以使用反向代理提供WAF功能,組織web攻擊;大型網站通常将反向dialing作為公網通路位址,Web伺服器是内網;

【架構】正向代理和反向代理

(2)負載均衡,通過反向代理伺服器來優化網站的負載

【架構】正向代理和反向代理

 三、兩者差別

1.正向代理中,Proxy和client同屬一個LAN,對server透明;

2.反向代理中,Proxy和server同屬于一個LAN,對client透明;

【架構】正向代理和反向代理

小結

    總結過後,加上一些部落格的借鑒,對于正向代理和反向代理有了一定的認識,同時使用Nginx實作反向代理的部分也需要進一步學習實踐。

                                                                           感謝您的通路!

繼續閱讀