Nginx(發音為"engine-x")是一款高性能、輕量級的開源Web服務器軟件,也可用作反向代理服務器、負載均衡器和HTTP緩存。Nginx之所以有被稱為“反向”代理,是因為它充當客戶端設備和Web服務器之間的中介或中間人,執行與傳統或正向代理相比在相反方向上的功能。
圖片
讓我們詳細解釋一下主要的區別:
正向代理:
- 功能: 正向代理位于用戶設備(客戶端)和互聯網之間。它代表客戶端訪問互聯網資源。
- 常見用途:
保護客戶端:它保護客戶端免受直接暴露在互聯網上的風險,增加了一層安全性。
繞過瀏覽限制:它可以幫助用戶繞過網絡或防火墻施加的限制。
阻止對特定內容的訪問:它可以根據預定義規則過濾或阻止特定內容的訪問。
反向代理(在這種情況下是Nginx):
- 功能: 反向代理接受來自客戶端的請求,將這些請求轉發到Web服務器,然后將結果返回給客戶端,就好像代理服務器本身處理了該請求一樣。它代表服務器。
- 常見用途:
保護服務器:它充當客戶端和后端服務器之間的屏障,增強了服務器的安全性。
負載均衡:它將來自客戶端的請求分發到多個服務器,以確保資源的最佳利用率,并防止任何單個服務器過載。
緩存靜態內容:它可以緩存靜態資源,如圖像或css文件,減輕后端服務器的負載并提高性能。
加密和解密SSL通信:它可以處理SSL/TLS加密和解密,將這項任務從后端服務器卸載。
實質上,“反向”在反向代理中的術語表示它代表服務器,處理客戶端請求并與后端服務器進行通信。這與正向代理形成對比,后者代表客戶端以訪問互聯網資源。Nginx作為反向代理的能力使其成為提升Web服務器設置中安全性、性能和可擴展性的多才多藝的工具。