關於nginx location匹配的問題
迷茫
迷茫 2017-05-16 17:09:23
0
1
486

配置nginx使其支援php-fpm時,發現一個問題,如下圖配置

#此時造訪http://host/server.php是沒問題的

#但是當我去掉了~後

如圖

#此時造訪http://host/server.php出問題了

#請教為什麼一定要有~號呢

我原先的理解是,/server.php這個uri能夠匹配location php且匹配的長度比location / 長(3:1),所以在這種情況下有沒有~ 都是一樣的,結果卻出人意料

求教大神,這是怎麼回事?

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回覆(1)
我想大声告诉你
  • 以=開頭表示精確匹配

  • 如 A 中只符合根目錄結尾的請求,後面不能帶任何字串。

  • ^~ 開頭表示uri以某個常規字串開頭,不是正則匹配

  • ~ 開頭表示區分大小寫的正規匹配;

  • ~* 開頭表示不區分大小寫的正規匹配

  • / 通用匹配, 如果沒有其它匹配,任何請求都會匹配到

沒有看過你這種都不符合的情況。
參考nginx設定location總結及rewrite規則寫法

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板