Nginx——正向代理與反向代理
客戶端------代理服務器------目標服務器
正向代理(forward proxy):
1.應用場景:
2.效果:
正向代理,其實是"代理服務器"代理了"客戶端",去和"目標服務器"進行交互。
通過正向代理服務器訪問目標服務器,目標服務器是不知道真正的客戶端是誰的,甚至不知道訪問自己的是一個代理。
3.用途:
突破訪問限制
通過代理服務器,可以突破自身IP訪問限制,訪問國外網(wǎng)站,教育網(wǎng)等。
提高訪問速度
通常代理服務器都設置一個較大的硬盤緩沖區(qū),會將部分請求的響應保存到緩沖區(qū)中,當其他用戶再訪問相同的信息時, 則直接由緩沖區(qū)中取出信息,傳給用戶,以提高訪問速度。
隱藏客戶端真實IP
上網(wǎng)者也可以通過這種方法隱藏自己的IP,免受攻擊。PS:代理服務器會知道你的IP
反向代理(reverse proxy):
1.應用場景:負載均衡
2.效果:
反向代理,其實是"代理服務器"代理了"目標服務器",去和"客戶端"進行交互。
通過反向代理服務器訪問目標服務器時,客戶端是不知道真正的目標服務器是誰的,甚至不知道自己訪問的是一個代理。
3.用途:
隱藏服務器真實IP
使用反向代理,可以對客戶端隱藏服務器的IP地址。
負載均衡
反向代理服務器可以做負載均衡,根據(jù)所有真實服務器的負載情況,將客戶端請求分發(fā)到不同的真實服務器上。
提高訪問速度
反向代理服務器可以對于靜態(tài)內(nèi)容及短時間內(nèi)有大量訪問請求的動態(tài)內(nèi)容提供緩存服務,提高訪問速度。
提供安全保障
反向代理服務器可以作為應用層防火墻,為網(wǎng)站提供對基于Web的攻擊行為(例如DoS/DDoS)的防護,更容易排查惡意軟件等。還可以為后端服務器統(tǒng)一提供加密和SSL加速(如SSL終端代理),提供HTTP訪問認證等。