ssl,post,proxy_set_body

unlo nginx-forum на nginx.us
Пн Июн 27 21:20:51 MSD 2011


Приветствую!

Пытаюсь настроить что-то вроде
авторизационной прокси
(авторизовавшись в nginx, пользователи
могут посещать требующие авторизацию
ресурсы без авторизации на этих
ресурсах).
Для того, чтобы при посещении браузером
некоей локации /login, проходила
авторизация на удалённом бекенде,
использую конструкцию:

location ~ ^/login$ {

rewrite  ^(.*)$ /login.php break;

proxy_ssl_session_reuse off;

proxy_method POST;
proxy_set_header   Host             backend:443;

proxy_set_header  Cookie  "";
proxy_set_header  Cache-Control "";
proxy_set_header   Connection close;
proxy_set_header   Content-Type application/x-www-form-urlencoded;

proxy_pass         https://backend:443$uri$is_args$args;

proxy_set_body    "passwd=somepass&login_name=admin";

}

При этом, если бекенд доступен по
протоколу http, всё проходит
замечательно. А с https начинаются разные
чудеса: post-запрос отрабатывает в 1
случае из 100, в основном получаю 502.

С чем может быть связано такое
поведение?
Можно ли "подменять" тело запроса таким
образом в ssl сессии?

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,210520,210520#msg-210520




Подробная информация о списке рассылки nginx-ru