首页 > 其他 > 详细

Nginx 的 location 与 rewrite

时间:2019-11-30 16:19:23      阅读:56      评论:0      收藏:0      [点我收藏+]

location 匹配只匹配地址部分,而不匹配参数部分

= 开头表示精确匹配,不是正则匹配,匹配成功后 不会继续 往下匹配,直接采用该段
^~ 开头表示uri以某个常规字符串开头,不是正则匹配,匹配成功后 不会继续 往下匹配,直接采用该段


/abc 配置以字符串abc开头的地址,不是正则匹配,匹配成功后 继续 往下匹配,没有其他匹配项了才会采用该段,如:/abc/edf
/ 通用匹配, 因为所有请求都是以/开头,所以如果没有其它匹配,任何请求都会匹配到,不是正则匹配,匹配成功后 继续 往下匹配,没有其他匹配项了才会采用该段


~ 开头表示区分大小写的正则匹配,匹配成功后 继续 往下匹配,没有其他匹配项了才会采用该段
~* 开头表示不区分大小写的正则匹配,匹配成功后 继续 往下匹配,没有其他匹配项了才会采用该段

匹配顺序,nginx会把所有location配置取出,然后按以下顺序做匹配,其中正则匹配又会按所有正则 location 顺序匹配:

(location =) -> (location /abc) -> (location ^~) -> (location ~,~* )

注意:因为 =^~ 匹配一但成功就 不会继续 往下匹配,/abc~~*都会继续往下匹配,所以我们最好是把 =^~ 匹配写到前面,/abc~~* 写到后面,以便和nginx执行顺序一致,也好理解

Nginx 的 location 与 rewrite

原文:https://www.cnblogs.com/lbnnbs/p/11962521.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!