ocation / {
if ($request_uri ~ ^/refresh.do$) {
proxy_pass http://edtnew;
break; 一
}
if ($request_method = POST) {
proxy_pass http://edtold;
break; 二
}
proxy_pass http://edt;
}
看这样一段配置:
一个location中只会proxy_pass一次,break就是说首次匹配到就停止
对于一个请求post /refresh.do如果一的位置有break就在一的地方停止转发到edtnew,如果一的地方没有就在二的地方停止,转发到edtold,匹配上面任意一个条件都不会转到默认的edt去执行。
1.location 匹配的优先级(来自实践总结中)
(location =) > (location 完整路径 >) >(location ^~ 路径) >(location ~* 正则) >(location 路径)
只要匹配到,其它的都会忽略,然后返回到改匹配。
转载于:https://blog.51cto.com/lvjian/595342