2013-06-29 32 views
3

我试图代理我的Linux框api框上的某个休息端点。这就是我现在所拥有的。Nginx的proxy_pass与查询字符串的API问题

我的Linux API箱

... 
location ~ ^/api/v0/roslyn(.*)$ { 
    resolver 8.8.8.8; 
    proxy_pass $scheme://my-windows-box.com/roslyn$1; 
} 

例如,我想代理以下网址

http://my-linux-box.com/api/v0/roslyn?q=5 

http://my-windows-box.com/roslyn?q=5 

然而,这似乎是缺少查询字符串,所以正则表达式失败?

+0

这是http://stackoverflow.com/questions/8130692/with-nginx-how-to的副本-forward-query-parameters – user1876508

回答

7

我不认为你可以通过正则表达式匹配的指定参数时,试试这个,而不是

location /api/v0/roslyn { 
    resolver 8.8.8.8; 
    proxy_pass $scheme://my-windows-box.com/roslyn$is_args$query_string; 
} 
+0

简单而完美;谢谢! – chickensalad