0
我嘗試根據來自客戶端的「customerlocale」頭的版本路由不同的上游。但是這個下面的配置不起作用。請給出一些想法來做到這一點。如果nginx proxy_pass中的條件
server {
listen 80 default;
location/{
if ($http_customerlocale = en) {
proxy_pass http://upstream-en;
}
if ($http_customerlocale = de) {
proxy_pass http://upstream-de;
}
}
}
假設你意識到在一個位置塊中'if' **的含義,你可能需要考慮將你的語言環境與不區分大小寫的正則表達式匹配,例如if($ http_customerlocale〜*「en」) ' –
@KeenanLawrence,謝謝你的回覆。我試過這個,「如果」條件檢查不起作用。甚至嘗試過這樣。如果($ v =「2」) set $ v「2」 { proxy_pass http:// upstream-2; } 它不會在條件內。 –
和我的nginx版本是1.4.6。 –