proxy_pass轉發路徑

一、引言

在nginx中配置proxy_pass時,proxy_pass后面的路徑最后面加“/”和不加“/”會有所區別。加“/”時,nginx不會代理location部分,不加“/”時,nginx會同時代理location部分。下面通過實驗來證明。

二、實驗

實驗環境簡要說明:

    node1為httpd服務器(172.16.47.101)

    node2為客戶端(172.16.47.102)

    node3為nginx代理服務器,自身不對外提供web服務(172.16.47.103)

以下四個例子都是通過http://172.16.47.103/admin/index.html這個地址來訪問。

node1網站目錄結構如下:每個目錄下面的index.html頁面的內容都是該頁面相對于/var/www/的路徑。

[root@node1 /var/www/html]# tree
.
├── abc
│   ├── admin
│   │   └── index.html
│   └── index.html
├── abcindex.html
├── admin
│   └── index.html
└── index.html

3 directories, 5 files
[root@node1 /var/www/html]#

1.第一種情況:

location /admin/ {
       proxy_pass      http://172.16.47.101/;
    }

會被代理到http://172.16.47.103/index.html,訪問結果如下

blob.png

2.第二種情況:(注意,相對于第一種情況,路徑后面少了一個“/”)

 location /admin/ {
        proxy_pass      http://172.16.47.101;
    }

會被代理到http://172.16.47.103/admin/index.html,訪問結果如下

blob.png

3.第三種情況:

location /admin/ {
        proxy_pass      http://172.16.47.101/abc/;
    }

會被代理到http://172.16.47.103/abc/index.html,訪問結果如下

blob.png

3.第四種情況:(注意,相對于第三種情況,路徑后面少了一個“/”)

location /admin/ {
        proxy_pass      http://172.16.47.101/abc;
    }

會被代理到http://172.16.47.103/abcindex.html,訪問結果如下

blob.png

以上,proxy_pass后面的路徑最后面加“/”和不加“/”在寫法上,差別很小,很多人沒寫時會沒留意到,但帶來的結果卻大不一樣,在使用中千萬要留心。

原創文章,作者:Lurker,如若轉載,請注明出處:http://www.www58058.com/66487

(1)
LurkerLurker
上一篇 2017-01-12 23:09
下一篇 2017-01-13 09:19

相關推薦

  • shell腳本中if與case使用,查找文件locate與find的使用,壓縮,解壓及歸檔工具

    shell腳本中if與case使用 查找文件locate與find的使用 壓縮,解壓及歸檔工具 執行的循序  順序執行  選擇執行  循環執行 條件語句if if只是一個有含義的詞,不能單獨作為指令使用。 單分支      if 條件判斷:then       &nbs…

    Linux干貨 2016-08-18
  • 內核編譯

    內核編譯 程序包的編譯安裝 ./configure,make,make install./configure檢查編譯環境依賴關系,并設定參數make 執行編譯操作make install 安裝二進制庫文件幫助文檔配置文件 前提:開發環境(開發工具,開發庫),頭文件:/usr/include 開源:源代碼 發行版,就是把源代碼拿過來,組織成程序。  …

    Linux干貨 2016-09-19
  • Linux 基礎入門(第一周)

    計算機組成,Linux發行版本,Linux基礎命令

    Linux干貨 2017-12-03
  • 系統啟動及內核管理

    一、知識整理 1、nohup 命令:不掛斷地運行命令,遠程連接當斷網或斷開shell時還可以繼續運行。無論是否將nohup命令的輸出重定向到終端,輸出都將附加到當前目錄下的nohup.out文件中,如果當前不可寫,則重定向到家目錄nohup.out文件,除非定義了輸出文件。 nohup COMMAND 輸出重定向至文件 nohup COMMAND &…

    Linux干貨 2016-09-19
  • Linux用戶和組的基礎概念

    用戶,組和權限管理   Multi-tasks,  Multi-Users 每個使用者:    用戶標識,密碼:    認證:Authentication    授權:Authorization    審計:Audition    3A 組…

    Linux干貨 2016-12-21
  • Find命令以及解壓與壓縮文件的相關指令

    1,find   實時查找,通過遍歷指定路徑完成文件的查找 查找路徑:指定具體目標路徑,默認為當前目錄 查找條件:指定的查找標準,可以文件名,大小,類型,權限等標準進行,默認為找出指定路徑下的所有文件 處理動作:對符合條件的文件做操作,默認輸出至屏幕 find -maxdepth level  最大搜索目錄深度 -mindept…

    2017-08-12
欧美性久久久久