一、正向代理和反向代理的區(qū)別
創(chuàng)新互聯(lián)主營瀘水網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,app軟件開發(fā),瀘水h5微信小程序定制開發(fā)搭建,瀘水網(wǎng)站營銷推廣歡迎瀘水等地區(qū)企業(yè)咨詢
正向代理代理客戶端,反向代理代理服務(wù)器。
1.1正向代理
正向代理服務(wù)器位于客戶端和服務(wù)器之間,為了從服務(wù)器獲取數(shù)據(jù),客戶端要向代理服務(wù)器發(fā)送一個請求,并指定目標(biāo)服務(wù)器,代理服務(wù)器將目標(biāo)服務(wù)器返回的數(shù)據(jù)轉(zhuǎn)交給客戶端。這里客戶端需要要進(jìn)行一些正向代理的設(shè)置的。
舉例:翻墻
正向代理中被代理的是客戶端的請求
1.2 反向代理
反向代理,客戶端對代理是無感知的,客戶端不需要任何配置就可以訪問,客戶端將請求發(fā)送到反向代理服務(wù)器,由反向代理服務(wù)器去選擇目標(biāo)服務(wù)器獲取數(shù)據(jù)后,在返回給客戶端,此時反向代理服務(wù)器和目標(biāo)服務(wù)器對外就是一個服務(wù)器,暴露的是代理服務(wù)器地址,隱藏了真實服務(wù)器IP地址。
二、nginx反向代理的使用
在nginx的配置文件nginx.conf中新建一個虛擬主機(jī)的配置,
server { listen 8080; server_name localhost; location /category/ { proxy_pass http://localhost; } }
以上的配置中,
listen 表示nginx要監(jiān)聽的端口;
server_name 就是訪問nginx時在瀏覽器中輸入的域名,可以直接填ip地址,要綁定多個可以用空格隔開;
location 表示nginx監(jiān)聽該端口時要匹配的url,如果訪問nginx的url中包含有/category/就執(zhí)行代理
proxy_pass 表示nginx要把客戶端的請求代理到的目標(biāo)。
注意這里proxy_pass的路徑寫法,如果像上邊這樣,路徑的結(jié)尾不帶/,表示的是相對路徑,那么nginx在轉(zhuǎn)發(fā)請求時不會截取掉原始url中的/category/ ,如瀏覽器訪問http://localhost:8080/category/findAll,那么nginx實際發(fā)出的請求地址是http://localhost/category/findAll。
如果proxy_pass的目標(biāo)路徑配置時 末尾帶上了/ ,表示的是絕對路徑,那么nginx在轉(zhuǎn)發(fā)請求時就會截取掉原始url中的/category/ ,如瀏覽器訪問http://localhost:8080/category/findAll,那么nginx實際發(fā)出的請求地址是http://localhost/findAll。
在配置時要根據(jù)自己的需要決定是否需要帶 /,不然實際使用時nginx會一直報404的錯誤。
我這里的配置因為我的后端接口路徑中包含了/category,所以我使用了相對路徑,保留了這個。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。
文章標(biāo)題:Nginx正向反向代理區(qū)別及原理解析
網(wǎng)頁路徑:http://jinyejixie.com/article36/gpsesg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、品牌網(wǎng)站建設(shè)、全網(wǎng)營銷推廣、域名注冊、建站公司、ChatGPT
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)