传递URI查询参数nginx反向代理

我有一个职位服务器监听端口8081和示例path。 我想能够redirect整个URI查询参数的节点服务。 我应该怎么做。

例如,我想要下面的post请求urlhttp://exmaple.com/foo/bar?bla=1 传递给 http://example.com:8081/foo/bar?bla=1

它看起来非常简单和直接的例子,但不能得到它的工作,任何ide?

location ^~ /foo/bar { rewrite_log on; rewrite ^/foo/bar(.*) /$1 break; proxy_pass http://example.com:8081/foo/bar; } 

Solutions Collecting From Web of "传递URI查询参数nginx反向代理"

默认情况下, proxy_pass不会更改请求URI(包括查询字符串)。 在你的问题中的例子说明在上游发送之前可以改变URI的两种方式 – 通过将可选的URI附加到proxy_pass语句(参见本文 )或者使用rewrite...break语句(参见本文 )。

如果你同时删除了这个URI,那么这个URI将被上传到上游,并且查询字符串保持不变:

 location ^~ /foo/bar { proxy_pass http://example.com:8081; }