代理应用代理其他应用,nginx.conf
的位置块中有一些正则表达式。例如,对于名为proxy-signup-app
的注册应用。
这有效,但它有3个位置块:
location ~* ^/signup/(.*)/$ {
proxy_pass https://proxy-signup-app.herokuapp.com/?proxy_regex=$1;
}
location ~* ^/signup/(.*)$ {
proxy_pass https://proxy-signup-app.herokuapp.com/?proxy_regex=$1;
}
location ~* ^/signup$ {
proxy_pass https://proxy-signup-app.herokuapp.com/?proxy_regex=$1;
}
它应该代理
/signup
/signup/
/signup/rainyday
/signup/rainyday/
代理应用程序将在proxy_regex
上收到:
/rainyday/
,rainyday/
或/rainyday
)不应重定向
/signups
如何将这些位置块合并为一个?
答案 0 :(得分:0)
不确定这是否是最佳方式,但它应该有效
location ~* ^/signup(/(.*?)/?|)$ {
proxy_pass https://proxy-signup-app.herokuapp.com/?proxy_regex=$2;
}