文章詳情頁
關于nginx location匹配的問題
瀏覽:149日期:2024-06-25 10:52:26
問題描述
配置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規則寫法
相關文章:
排行榜
