北京赛车 pk10开奖记录_Toyou热购彩票官网
香港高速VIP雲機房火爆上線啦!無需備案潮,開通即用!配套《巔雲自助建站系統3.0》將帶給您飛一般的可視化拖拽建站體驗耍焊,歡迎免費體驗烷喚。

建站專題

淺談nginx反向代理中神奇的斜線

一佰互聯網站開發設計(www.yinxi.net) 發布日期 2019-04-22 10:28:32 瀏覽數: 42

在進行nginx反向代理配置的時候臥碗,location和proxy_pass中的斜線會造成各種困擾菠,有時候多一個或少一個斜線淖攤孩,就會造成完全不同的結果祭,所以特地將location和proxy_pass後有無斜線的情況進行了排列組合諱脫佬,進行了一次完整的測試焦句,找出原理戀殺,以提高姿勢水平~

. 環境信息

兩台nginx服務器

nginx A: 192.168.1.48

nginx B: 192.168.1.56

一. 測試方法

在nginx A中配置不同的規則騾雌粕,然後請求nginx A笑︰ http://192.168.1.48/foo/api

觀察nginx B收到的請求幫稈慫,具體操作是查看日志中的$request字段

二. 測試過程及結果

案例1

nginx A配置舍款蕾︰

location /foo/ {  proxy_pass http://192.168.1.56/;}

nginx B收到的請求科刺腳︰/api

案例2

nginx A配置萌橙︰

location /foo/ {  proxy_pass http://192.168.1.56/;}

nginx B收到的請求涵僥︰//api

案例3

nginx A配置碩囊︰

location /foo/ {  proxy_pass http://192.168.1.56/;}

nginx B收到的請求每︰/foo/api

案例4

nginx A配置尼佩︰

location /foo/ {  proxy_pass http://192.168.1.56/;}

nginx B收到的請求謊甘︰/foo/api

案例5

nginx A配置休︰

location /foo/ {  proxy_pass http://192.168.1.56/bar/;}

nginx B收到的請求醒︰/bar/api

案例6

nginx A配置片文︰

location /foo {  proxy_pass http://192.168.1.56/bar/;}

nginx B收到的請求藹輸拍︰/bar//api

案例7

nginx A配置譬︰

location /foo/ {  proxy_pass http://192.168.1.56/bar;}

nginx B收到的請求刮暖︰/barapi

案例8

nginx A配置刑緘咳︰

location /foo {  proxy_pass http://192.168.1.56/bar;}

nginx B收到的請求坤晦︰/bar/api

看到這里是不是都暈了呢偷,其實是有規律的

現在把這些案例按表格排列起來累,結果表示nginx B收到的請求

表一

案例 location proxy_pass 結果
1 /foo/ http://192.168.1.48/ /api
2 /foo http://192.168.1.48/ //api
3 /foo/ http://192.168.1.48 /foo/api
4 /foo http://192.168.1.48 /foo/api

表二

案例 location proxy_pass 結果
5 /foo/ http://192.168.1.48/bar/ /bar/api
6 /foo http://192.168.1.48/bar/ /bar//api
7 /foo/ http://192.168.1.48/bar /barapi
8 /foo http://192.168.1.48/bar /bar/api

三. 解析

原請求路徑憨壞︰本文中統一為 "/foo/api"

location: 上面表格中的location列

proxy_pass卻嘆︰上面表格中的proxy_pass列

新請求路徑糙︰nginx將原請求路徑處理過後的字符串

重點對 proxy_pass 進行分析晤蝦弊,可以分為3種形式

然後按照ip:port後是否接了字符串歸為2類滬密烯,"/"也是字符串殊費凜,因此1歸為一類燒,2瑟溝、3歸為一類樸涉,下面對這兩類情況進行說明

當 proxy_pass 的 ip:port 後未接字符串的時候椿肪,nginx 會將原請求路徑原封不動地轉交給下一站 nginx猩,如案例3和4

當 proxy_pass 的 ip:port 後接了字符串的時候策藐矩,nginx 會將 location 從 原請求路徑 中剔除松惹問,再將剩余的字符串拼接到 proxy_pass 後生成 新請求路徑結渤,然後將 新請求路徑 轉交給下一站nginx(上面一種情況實際上和這個是一樣的熊肉聯,只不過剔除的字符串是空串~~)

舉個最讓人疑惑的例子棉響技︰案例7激。proxy_pass 的 ip:port 後接了字符串 "/bar"香,因此將 location膠︰"/foo/" 從 原請求路徑劣︰"/foo/api" 中剔除矛,變為"api"烹,再將"api"拼接到proxy_pass蠱︰ http://192.168.1.48/bar 後生成了新請求url千︰" http://192.168.1.48/barapi "瞬菊,因此下一站的nginx收到的請求就是 "/barapi"駁。

案例6手躥控︰proxy_pass 的 ip:port 後接了字符串 "/bar/"懇滬,因此將 lpk10开奖 “青銅之血?”6.復置。ocation耙但︰"/foo" 從 原請求路徑 "/foo/api" 中剔除弦,變為 "/api"沁示,再將 "/api" 拼接到proxy_pass法荒呵︰ http://192.168.1.48/bar/ 後生成了 新請求路徑臼︰" http://192.168.1.48/bar//api "祈表,因此下一站的nginx收到的請求就是 /bar//api叫瘟。

其它的案例都可以以此類推倉別峨,現在終于搞明白了叛霖徑,再也不用一頭霧水岔。

以上就是本文的全部內容滇,希望對大家的學習有所幫助楓捐,也希望大家多多支持網頁設計間。

一佰互聯是全國知名建站品牌服務商,我們有九年網站建設濤、網站制作妹叛供、網頁設計拘、php開發和域名注冊及虛擬主機服務經驗碴恍巾,提供的自助建站服務更是全國有名編豁。近年來還整合團隊優勢自主開發了可視化多用戶”巔雲建站系統“3.0平台版覽騁,拖拽排版網站制作設計悔幾,輕松實現pc站拉彭、手機微網站爐、小程序毀齒、APP一體化全網營銷網站建設 乳船,已成功的為全國上百家網絡公司提供自助建站平台搭建服務危。

相關新聞more

21
04月
html5 touch事件實現頁面上下滑動效

html5 touch事件實現頁面上下滑動效果【附代碼】XML/HTML Code復制內容到剪貼板 <!doctypehtml&... >>詳情

26
04月
php一個文件搞定微信jssdk配置

php一個文件搞定微信jssdk配置拒妨︰包括緩存撼鞏艦,包括https通訊簍,獲取微信access_token將,簽名什麼的都有竿擎沸。但是防範性編程做得比較... >>詳情

26
03月
自媒體工具總匯燦男舊︰送上干貨欄,新自媒體運營薯,10

簡介熔究修︰想要做好自媒體莫霸確,工具必不可少攻茹,都說寫文章難確紋,取爆文名字難膿,拍視頻難新穆,剪輯難鮮鴕抹,都是因為缺少實用軟件工具篡釀。當你懂得以下這些最基礎的實用軟件... >>詳情

03
05月
SEO新手們滑絨,看完這篇文章該睡醒了吧!SEO

人才招聘對于企業來說一件大事競素芹,更多的企業想通過招聘獲得更多好的人才嗽旗。當然春剿掂,在企業的招聘中浮灤濫,不乏有SEO人員派楔城、網站運營人員垂安、網站推廣人員來面試... >>詳情

營業執照. cdn加速服務 備案系統認證 網絡安全協會 我們的支付方式AAA認證

7x24小時服務電話:18581389571 傳真:023-85725751 免費建站交流群們灌︰236412099 139947842(自助建站交流) E-Mail:post@yinxi.net 網站投訴:
重慶楚捷科技有限公司 一佰互聯©版權所有 自助建站(www.yinxi.net,Inc.) 2001-2020 All Rights Reserved 本站程序受法律保護,網站法律顧問犁鈴︰ITLAW-莊毅雄律師
中華人民共和國信息產業部網站備案號:渝ICP備12000592號
pk10开奖 热购彩票 北京赛车