第一种方法
location ^~ /wap/ { if ($request_uri ~ /wap/(\d+)/(.+)) { set $bucketid $1; set $params $2; } proxy_pass http://mx$bucketid.test.com:6601/$params; }
第二种方法也可以首先rewrite一下,然后再代理:
location ^~ /wap/{ rewrite /wap/(\d+)/(.+) /$2?$args break; proxy_pass http://mx$1.test.com:6601; }