doc:https://nginx.org/en/docs/http/ngx_http_core_module.html#location
1.简介
localtion是用于和请求url进行匹配的指令,语法如下
句法: location [ = | ~ | ~* | ^~ ] uri { ... }
location @name { ... }
默认: —
内容: server, location
- 可以在匹配的uri模式前面添加四种修饰符,来指定匹配模式
- 还可以使用@指定一个命名localtion块,可以被引用
2.修饰符
位置可以由前缀字符串或正则表达式定义。
正则表达式由前面的“ ~*
”修饰符(不区分大小写的匹配)或“ ~
”修饰符(不区分大小写的匹配)指定。
- =:精确匹配,uri必须完全相同,不检查后续
- ^~:前缀字符串匹配,不检查正则表达式
~*:不区分大小写的正则匹配
- ~:区分大小写的正则匹配
匹配逻辑为:
nginx首先检查使用前缀字符串定义的location指令块(前缀位置)。其中,将选择并记住具有最长匹配前缀的位置。
然后按照在配置文件中出现的顺序检查正则表达式。正则表达