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/([^?]*)") {

 

你可能感兴趣的:(nginx if rewrite 正确处理带与不带Url参数)