Nginx 的 location 匹配規則

1.location 配置有什么用?

location 配置用于匹配指定 URI,然后對匹配的請求進行相關處理。

2.語法規則

location [=|~|~*|^~] /uri/ {...}

符號 含義
= 表示精確匹配
^~ 表示 URI 以某個常規字符串開頭。Nginx 不對 URL 做編碼,因此請求為 /static/20%/aa,可以被 ^~ /static/ /aa 匹配到
~ 表示區分大小寫的正則匹配
~* 表示不區分大小寫的正則匹配
/ 通用匹配,任何請求都會匹配

多個 location 配置的情況下匹配順序為(參考資料而來,還未實際驗證):

  • 首先匹配 =
  • 其次匹配 ^~
  • 其次是按文件中順序的正則匹配
  • 最后是交給 /
  • 當有匹配成功時候,停止匹配,按當前匹配規則處理請求

例子,有如下匹配規則:

location = / {
    #規則A
}

location = /login {
    #規則B
}

location ^~ /static/ {
    #規則C
}

location ~ \.(gif|jpg|png|js|css)$ {
    #規則D
}

location ~* \.png$ {
    #規則E
}

location / {
    #規則F
}

那么產生的效果如下:

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,993評論 19 139
  • Nginx簡介 解決基于進程模型產生的C10K問題,請求時即使無狀態連接如web服務都無法達到并發響應量級一萬的現...
    魏鎮坪閱讀 2,090評論 0 9
  • I/O模型Nginx介紹Nginx的安裝和目錄結構Nginx的配置Nginx的編譯安裝 一、I/O模型 (一)I/...
    哈嘍別樣閱讀 915評論 0 4
  • 上一篇《WEB請求處理一:瀏覽器請求發起處理》,我們講述了瀏覽器端請求發起過程,通過DNS域名解析服務器IP,并建...
    七寸知架構閱讀 81,269評論 21 356
  • 我大學學的是傳統行業,互聯網是大勢所趨,我決定成為一名互聯網人。技術,產品,運營,我該選擇哪一個?關于代碼...
    Flow_13閱讀 161評論 0 0