+
95
-

请问nginx配置多个location前后优先级是怎样的?

请问nginx配置多个location前后优先级是怎样的?

网友回复

+
15
-

以下是nginx location 优先级顺序:

= 进行普通字符精确匹配。也就是完全匹配。

^~ 表示普通字符匹配。使用前缀匹配。如果匹配成功,则不再匹配其他location。

~ 表示执行一个正则匹配,区分大小写,~* 表示执行一个正则匹配,不区分大小写

常规写法如 location /、location /test等

举个例子

location  = / {
  # 精确匹配 / ,主机名后面不能带任何字符串
  [ configuration A ]
}
location  / {
  # 因为所有的地址都以 / 开头,所以这条规则将匹配到所有请求
  # 但是正则和最长字符串会优先匹配
  [ configuration B ]
}
location /documents/ {
  # 匹配任何以 /documents/ 开头的地址,匹配符合以后,还要继续往...

点击查看剩余70%

我知道答案,我要回答