nginx if rewrite 正确处理带与不带Url参数

location ~ / {
proxy_read_timeout 600s;
proxy_next_upstream_tries 1;
client_max_body_size 100m;
if ($request_uri ~ "/abcd/([^?]*)") {
set $path $1;
rewrite . /$path;
proxy_pass http://127.0.0.1:8081;
break;
}
proxy_pass http://127.0.0.1:8080;
}
从配置上看,rewrite后好像接收不到请求参数似的。其实是可以的。

另外下面两行是不一样的:

if ($request_uri ~ "/abcd/([^?]*)") {
if ($request ~ "/abcd/([^?]*)") {

posted @ 2020-07-27 09:39  年少有为AAA  阅读(1379)  评论(0编辑  收藏  举报