关于nginx location中的 = ^~ ~ ~* 默认匹配的优先级问题
nginx location中,= ^~ ~ ~* 默认匹配,五种匹配的优先级如下:
''='' > "^~" > "~" 和"~*" > 默认匹配
下面是关于各种匹配的解释:
1. "="代表精准匹配,精确匹配优先级最高,只有请求路径与location后的值完全相同时才匹配。
2. "^~"代表最长前缀匹配,如果最长前缀匹配location中带有^~的修饰符,则直接匹配,不再检查正则匹配
3. "~" "~\*"代表正则匹配,"~"代表区分大小写的正则匹配,"~*"代表不区分大小写的正则匹配,两者的优先级按文件中出现的顺序匹配
4. 默认匹配(普通前缀匹配),如果没有命中上述规则,选择最长前缀的location

浙公网安备 33010602011771号