nginx location匹配规则

(1. location / (通用匹配,匹配优先级最弱)

(2. location = /a (完全匹配,匹配优先级最高)

(3. location ^~ /a (无正则普通匹配,匹配优先级仅此=)

(4. location ~ /\w (正则匹配(大小写敏感))

(5. location ~* /\w~ (正则匹配(大小写不敏感),)

 

* location的匹配优先级如下:

1. 先用所有前缀字符串和目标URI尝试匹配。

2. 如果“=”修饰符定义前缀字符串和目标URI精确匹配上,则停止搜索。匹配结束。

3. 如果和目标URI匹配的最长前缀字符串前面有“^~”修饰符,则不再检查正则表达式,匹配结束。

4. 存储和目标URI匹配的最长的前缀字符串。

5. 使用所有的正则表达式和目标URI尝试匹配。

6. 当找到第一个匹配的正则表达式时,使用对应的location配置,匹配结束。

7. 如果没有找到匹配的正则表达式,则使用4中匹配的最长的前缀字符串的location配置。

综上,优先级从高到低依次为:“=”>“^~”>正则匹配(“~”、“~*”)>一般前缀字符串匹配。

你可能感兴趣的:(nginx,正则表达式)