Доброго времени суток всем подписчикам!

Подскажите, возможно ли нечто этакое:

Использую proxy_pass, для примера:

upstream some_proxy {
        server SERV_NAME_1:8080;
        server SERV_NAME_2:8080 backup;
}

в локейшене анализирую урел на предмет наличия определенного параметра:
      /some/url/.....?param=SERV_NAME_x

Задача в том, чтобы отдавать запрашиваемый файлик (имя передается в том же
в урле) при встрече такого параметра с машины SERV_NAME_x, и не
проксировался на вторую машину. Хотел попробовать в upstream вписать if
проверки, а-ля:

if ($args ~* (.*) param=SERV_NAME_1 (.+)) {
* server SERV_NAME_1:8080;*
}
аналогично для serv_name_2. Но в upstream, насколько я понял, нельзя
использовать директиву if. Подскажите, есть ли какое-то более-менее
стандартное решение этого вопроса, или же надо искать в другой степи?

Спасибо.
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Ответить