nginx location 的配置

1、基本語法:location [=|~|~*|^~] /uri/ { … } php

2、分類: nginx

 1.基本location:以「 = 」或「 ^~ 」爲前綴或者沒有任何前綴的 /uri/  正則表達式

 2.正則location:以「 ~ 」或「 ~* 」爲前綴的 /uri/ 測試

 基本location 又分爲2種: spa

  1)嚴格精確匹配:  「 = 」  字符串

  2)最大前綴匹配: 無前綴 或者以「 ^~ 」 get

3、解釋: io

  1)= 嚴格匹配。若是這個查詢匹配,那麼將中止搜索並當即處理此請求。
  2)~ 爲區分大小寫匹配(可用正則表達式)
  3)~* 爲不區分大小寫匹配(可用正則表達式)
  4)!~和!~*分別爲區分大小寫不匹配及不區分大小寫不匹配
  5)^~ 若是把這個前綴用於一個常規字符串,那麼告訴nginx 若是路徑匹配那麼不測試正則表達式。
搜索

4、規則: 語法

  1.先匹配普通 location ,再匹配正則 location ,可是若是普通 location 的匹配結果剛好是「嚴格精確( exact match )」的,則 nginx 再也不嘗試後面的正則 location ;若是普通 location 的匹配結果是「最大前綴」,則正則 location 的匹配覆蓋普通 location 的匹配。

  2.基本location 中,嚴格精確匹配大於最大前綴

  2.對於普通 location 指令,匹配規則是:最大前綴匹配(與順序無關),若是剛好是嚴格精確匹配結果或者加有前綴「 ^~ 」或「 = 」(符號「 = 」只能嚴格匹配,不能前綴匹配),則中止搜索正則 location ;但對於正則 location 的匹配規則是:按編輯順序逐個匹配(與順序有關),只要匹配上,就當即中止後面的搜索。

相關文章
相關標籤/搜索