正向代理和反向代理的形象理解
導讀 | 代理伺服器分為正向代理伺服器和反向代理伺服器,他們都是充當客戶端和目標伺服器的中介,都是由客戶端傳送請求到代理伺服器,再由代理伺服器傳遞請求給目標伺服器,最終再由代理伺服器傳遞響應資訊給客戶端。他們結構上很類似,到底是啥區別呢? |
正向代理,意思是一個位於客戶端和原始伺服器(origin server)之間的伺服器,為了從原始伺服器取得內容,客戶端向代理傳送一個請求並指定目標(原始伺服器),然後代理向原始伺服器轉交請求並將獲得的內容返回給客戶端。
什麼時候會用到正向代理呢?舉個例子,如果你厭煩了國內的搜尋網站,想 fan qiang 上Google怎麼辦?一個方法就是買個國外的代理伺服器,這個代理伺服器是可以訪問Google的。因此,我們就可以請求該代理伺服器,告訴它幫我們訪問Google的頁面,並把Google的頁面再返回給我們,如此就可以繞過**了。這個中介伺服器就是典型的正向代理伺服器。
因此,正向代理,就是客戶端委託一個伺服器作為自己的代表,向目標伺服器發起請求。正向代理就像古時的媒人,男方若看上一個姑娘,並不能直接向姑娘家提親,必須要找個媒人代為辦理,謂之明媒正娶。
由於是代理伺服器代替客戶端發起請求,因此 Server 並不知道真正的 Client 是誰(當然如果代理伺服器公佈了Clien的話也可以)。因此,利用正向代理,客戶端可以對 Server 隱藏自己的地址,從而避免受到可能的攻擊。
代理伺服器還有一個優點:他可以提前快取 Server 的內容,Client 的某些請求可由代理伺服器直接返回,從而提高客戶端的訪問速度。
另外,如果 Client 要透過正向代理訪問目標伺服器,必須要對代理伺服器進行設定,設定代理伺服器的 IP 地址和代理程式的埠,才能訪問代理伺服器。
反向代理伺服器也是一箇中介伺服器,充當 Client 和 Server 溝通的橋樑。但是他和正向代理有什麼區別呢?如果說正向代理伺服器像是一個媒人,那麼反向代理伺服器就像是養在深閨人未識的大家閨秀的一個替身,替她出面把關應酬。然而在追求者(Client)看來,Client 並不知道自己打交道的是個替身,他以為自己訪問的是目標 Server,因為很多網站公佈的訪問地址其實就是代理伺服器的訪問地址。看下圖:
為什麼需要一個反向代理伺服器作為一個橋樑呢?考慮這種情況:出於安全的考慮,我們不想把 Server 直接暴露出來,而是放在內網中。這時 Client 在外網無法就無法 Server 了。因此,我們就可以新增一臺中間伺服器,連線內外網,這樣就可以允許外網使用者訪問,同時可作為防火牆對外部請求進行限制,提高內部伺服器的安全性。
除了防火牆外,反向代理伺服器還有一個典型的用途就是作為負載均衡伺服器,根據目標伺服器的工作負荷情況,將請求分發到合適的伺服器。
正向代理和反向代理區別總結如下:
正向代理是對客戶端的代理,由客戶端設立,客戶端了解代理伺服器和目標伺服器,但目標伺服器不瞭解真正的客戶端是誰;使用正向代理可達到 突破訪問限制、提高訪問速度、對伺服器隱藏客戶端IP等目的;
反向代理是對伺服器的代理,由伺服器設立,客戶端不瞭解真正的伺服器是誰,使用反向代理可達到負載均衡、保障服務端安全、對客戶端隱藏伺服器IP等目的。
原文來自:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2687280/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 正向代理和反向代理
- 反向代理和正向代理區別
- Nginx正向代理和反向代理配置Nginx
- nginx正向代理、反向代理Nginx
- 正向代理與反向代理
- 反向代理與正向代理
- 什麼是正向代理和反向代理?
- 正向代理和反向代理的本質區別
- Nginx之路--配置正向代理、反向代理Nginx
- 正向代理與反向代理總結
- 圖解正向代理與反向代理圖解
- 我們們來聊聊正向代理和反向代理
- 圖解正向代理、反向代理、透明代理圖解
- 反向代理與正向代理差異分析
- 圖文總結:正向代理與反向代理
- 淺析正向代理與反向代理 海外代理IP介紹
- 什麼是正向代理?什麼是反向代理?
- 什麼是反向代理,什麼又是正向代理?
- Nginx 學習系列(一) ------------- 正向代理與反向代理Nginx
- 介紹Nginx、正向代理和實現反向代理的兩個例項Nginx
- 反向代理是什麼?和正向代理有什麼區別呢?
- 基於Apache搭建HTTP HTTPS 正向代理 反向代理伺服器ApacheHTTP伺服器
- 四層反向代理和七層反向代理
- 代理與反向代理、負載均衡和快取負載快取
- Web前端培訓教程學習路線影片原始碼課件:正向代理與反向代理Web前端原始碼
- nginx 反向代理Nginx
- Nginx反向代理Nginx
- nginx 做正向代理配置Nginx
- Nginx 反向代理解決跨域問題Nginx跨域
- 反向代理的有趣用法
- Nginx 反向代理解決跨域問題分析Nginx跨域
- Nginx-正向代理實現Nginx
- CentOS搭建squid正向代理教程。CentOSUI
- Nginx 配置:反向代理Nginx
- Nginx 配置反向代理Nginx
- Nginx配置正向代理支援HTTP和HTTPS轉發NginxHTTP
- 反向代理學習筆記(一) Nginx與反向代理緒論筆記Nginx
- 反向代理是如何工作的?