Добрый день!
Хочу реализовать следующую схему для nginx:
если в запросе задан параметр $upstream = a.domain.tld, то направлять запрос
на этот апстрим
если параметра нет, то направлять на дефолтный.
Не посоветуете ли, как можно реализовать аналог тринарного оператора:
set $host = $arg_upstream ? $arg_upstream : $default_upstream;
proxy_pass $host
на ум приходит использование map:
map $upstream $host {
hostnames;
default $default_upstream;
a.domain.tld ip.ad.dr.es1;
b.domain.tld ip.ad.dr.es1;
c.domain.tld ip.ad.dr.es1;
}
...
location / {
set $upstream $arg_upstream;
proxy_pass $host;
}
Но тут возникает вопрос - известен ли $arg_upstream в тот момент, когда
происходит proxy_pass?
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://nginx.org/mailman/listinfo/nginx-ru