我在Nginx上有以下配置。
location ~ (/website|/login) {
#proxy to server A
...
}
location /dashboard {
#proxy to server B
....
}
当/dashboard/login
向server A
发出请求时,会发生冲突,而server B
代替我所希望的location /website {
#proxy to server A
...
}
location /login {
#proxy to server A
...
}
location /dashboard {
#proxy to server B
....
}
。
一个完美运作的丑陋解决方案:
<style name="ButtonStyle" parent="ButtonStyleBase">
<item name="textAllCaps">false</item>
<item name="android:textColor">#000000</item>
</style>
如何更改/ dashboard / login的此配置与#b定义相匹配? 我想避免在丑陋的解决方案中使用重复的代码。
答案 0 :(得分:0)
你的丑陋&#34;解决方案实际上简洁明了。它并没有涉及可能难以理解和修改的正则表达式魔法。
http://nginx.org/en/docs/http/ngx_http_core_module.html#location
&LT; ...&GT; nginx首先检查使用前缀字符串定义的位置。 &LT; ...&GT;然后按照它们在配置文件中的出现顺序检查正则表达式。正则表达式的搜索在第一个匹配时终止,并使用相应的配置。
但这里只有两个位置块的解决方案。
# Location order is important!
location ~ /dashboard {
#proxy to server B
}
location ~ (/website|/login) {
#proxy to server A
}