前言
客戶端在向服務器發送請求時,請求的資源由於地域等影響受到限制,客戶端不能直接訪問,需要使用一些代理服務器去向我們請求資源界面,這個時候就需要有代理服務器的產生,代理服務器分爲正向代理和反向代理
代理服務器的作用
1.提高訪問速度
由於目標主機返回的數據會存放在代理服務器的硬盤中,因此下一次客戶再訪問相同的站點數據時,會直接從代理服務器的硬盤中讀取,起到了緩存的作用,尤其對於熱門網站能明顯提高訪問速度。
2.防火牆作用
由於所有的客戶機請求都必須通過代理服務器訪問遠程站點,因此可以在代理服務器上設限,過濾掉某些不安全信息。同時正向代理中上網者可以隱藏自己的IP,免受攻擊。
3.突破訪問限制
互聯網上有許多開發的代理服務器,客戶機在訪問受限時,可通過不受限的代理服務器訪問目標站點,通俗說,我們使用的翻牆瀏覽器就是利用了代理服務器,可以直接訪問外網。
一、正向代理
正向代理(forward proxy) ,一個位於客戶端和原始服務器之間的服務器,爲了從原始服務器取得內容,客戶端向代理髮送一個請求並制定目標(原始服務器),然後代理向原始服務器轉發請求並將獲得的內容返回給客戶端,客戶端才能使用正向代理。我們平時說的代理就是指正向代理。
簡而言之,當我們需要去訪問國外某些資源時,由於限制我們不能直接訪問,這個時候就可以去訪問國外代理服務器並指定原始服務器(目標服務器),讓國外代理服務器去幫我們訪問資源,注意這個時候我們知道代理服務器和原始服務器的存在,國外代理服務器就充當了一個跳板。
正向代理的用途:
(1)訪問原來無法訪問的資源,如google
(2) 可以做緩存,加速訪問資源
(3)對客戶端訪問授權,上網進行認證
(4)代理可以記錄用戶訪問記錄(上網行爲管理),對外隱藏用戶信息
二、反向代理
反向代理(Reverse Proxy)實際運行方式是指以代理服務器來接受internet上的連接請求,然後將請求轉發給內部網絡上的服務器,並將從服務器上得到的結果返回給internet上請求連接的客戶端,此時代理服務器對外就表現爲一個服務器。
反向代理的作用:
(1)保證內網的安全,可以使用反向代理提供WAF功能,阻止web攻擊
大型網站,通常將反向代理作爲公網訪問地址,Web服務器是內網。
(2)負載均衡,通過反向代理服務器來優化網站的負載