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