談一談正向代理和反向代理

前言
    小編在公司的技術分享中屢次聽到正向代理和反向代理,對於Ngnix這一實現反向代理的服務器,是如何工做的呢?下面我們就一塊兒瞭解一下。nginx

正文
什麼是代理服務器(Proxy Serve)?
    提供代理服務的電腦系統或其它類型的網絡終端,代替網絡用戶去取得網絡信息。瀏覽器

爲何使用代理服務器?
提升訪問速度
    因爲目標主機返回的數據會存放在代理服務器的硬盤中,所以下一次客戶再訪問相同的站點數據時,會直接從代理服務器的硬盤中讀取,起到了緩存的做用,尤爲對於熱門網站能明顯提升訪問速度。緩存

防火牆做用
    因爲全部的客戶機請求都必須經過代理服務器訪問遠程站點,所以能夠在代理服務器上設限,過濾掉某些不安全信息。同時正向代理中上網者能夠隱藏本身的IP,免受攻擊。安全

突破訪問限制
    互聯網上有許多開發的代理服務器,客戶機在訪問受限時,可經過不受限的代理服務器訪問目標站點,通俗說,咱們使用的FQ瀏覽器就是利用了代理服務器,能夠直接訪問外網。服務器

正向代理
     正向代理(forward proxy) ,一個位於客戶端和原始服務器之間的服務器,爲了從原始服務器取得內容,客戶端向代理髮送一個請求並制定目標(原始服務器),而後代理向原始服務器轉發請求並將得到的內容返回給客戶端,客戶端才能使用正向代理。咱們平時說的代理就是指正向代理。
    簡單一點:A向C借錢,因爲一些狀況不能直接向C借錢,因而A想了一個辦法,他讓B去向C借錢,這樣B就代替A向C借錢,A就獲得了C的錢,C並不知道A的存在,B就充當了A的代理人的角色。 網絡


反向代理
    反向代理(Reverse Proxy),以代理服務器來接受internet上的鏈接請求,而後將請求轉發給內部網絡上的服務器,並將從服務器上獲得的結果返回給internet上請求的客戶端,此時代理服務器對外表現爲一個反向代理服務器。
    理解起來有些抽象,能夠這麼說:A向B借錢,B沒有拿本身的錢,而是悄悄地向C借錢,拿到錢以後再交給A,A覺得是B的錢,他並不知道C的存在。 負載均衡


正向代理和反向代理的區別
位置不一樣
正向代理,架設在客戶機和目標主機之間;
反向代理,架設在服務器端;
代理對象不一樣
正向代理,代理客戶端,服務端不知道實際發起請求的客戶端;
反向代理,代理服務端,客戶端不知道實際提供服務的服務端;

備註:正向代理–HTTP代理爲多我的提供FQ服務;反向代理–百度外賣爲多個商戶提供平臺給某個用戶提供外賣服務。
用途不一樣
正向代理,爲在防火牆內的局域網客戶端提供訪問Internet的途徑;
反向代理,將防火牆後面的服務器提供給Internet訪問;
安全性不一樣
正向代理容許客戶端經過它訪問任意網站而且隱藏客戶端自身,所以必須採起安全措施以確保僅爲受權的客戶端提供服務;
反向代理都對外都是透明的,訪問者並不知道本身訪問的是哪個代理。
正向代理的應用
    1. 訪問原來沒法訪問的資源
    2. 用做緩存,加速訪問速度
    3. 對客戶端訪問受權,上網進行認證
    4. 代理能夠記錄用戶訪問記錄(上網行爲管理),對外隱藏用戶信息網站

反向代理的應用
    1. 保護內網安全
    2. 負載均衡
    3. 緩存,減小服務器的壓力
       Nginx做爲最近較火的反向代理服務器,安裝在目的主機端,主要用於轉發客戶機請求,後臺有多個http服務器提供服務,nginx的功能就是把請求轉發給後臺的服務器,決定哪臺目標主機來處理當前請求。.net

總結
    正向代理是從客戶端的角度出發,服務於特定用戶(好比說一個局域網內的客戶)以訪問非特定的服務;反向代理正好與此相反,從服務端的角度出發,服務於非特定用戶(一般是全部用戶),已訪問特定的服務。
---------------------
做者:大白快跑8
來源:CSDN
原文:https://blog.csdn.net/zt15732625878/article/details/78941268
版權聲明:本文爲博主原創文章,轉載請附上博文連接!代理

相關文章
相關標籤/搜索