Re: как правильно написать правило proxy_redirect ?

Igor Sysoev igor на sysoev.ru
Пн Авг 2 14:52:22 MSD 2010


On Mon, Aug 02, 2010 at 04:48:43PM +0600, Илья Шипицин wrote:

> нет, поменять надо то, что идет параметром в ?back=....
> протокол перед auth.kontur.ru должен остаться прежним, https

Насколько я понимаю, бэкенд отвечает "http://..." или нет ?

> 2 августа 2010 г. 16:46 пользователь Igor Sysoev <igor at sysoev.ru> написал:
> > On Mon, Aug 02, 2010 at 04:36:05PM +0600, Илья Шипицин wrote:
> >
> >> Добрый день!
> >>
> >> есть вот такая связка
> >>
> >> внешний мир ---(https)---->nginx---(http на порту 8066)--->backend
> >>
> >> на один из запросов от бэкенда прилетает
> >>
> >> Location:  https://auth.kontur.ru/Authenticate.aspx?back=http%3a%2f%2fr66-extern.kontur.ru%3a8066%2fLogin.aspx
> >>
> >> как видим, здесь указан порт 8066 и протокол http. хотелось бы подменить его на
> >>
> >> Location:  https://auth.kontur.ru/Authenticate.aspx?back=https%3a%2f%2fr66-extern.kontur.ru%2fLogin.aspx
> >>
> >> конфиг я нарисовал такой:
> >>
> >> ------------------------------------------------------------------------------------------
> >> worker_processes  1;
> >>
> >> error_log  logs/error.log  notice;
> >>
> >> events {
> >>     worker_connections  2048;
> >> }
> >>
> >>
> >> http {
> >>     server_tokens off;
> >>     include       mime.types;
> >>     default_type  application/octet-stream;
> >>
> >>     access_log  logs/access.log  combined;
> >>
> >>     sendfile        on;
> >>     keepalive_timeout  65;
> >>
> >>     server {
> >>         listen       443  default backlog=1024 ssl;
> >>         server_name  localhost;
> >>
> >>         ssl                  on;
> >>         ssl_certificate      cert.pem;
> >>         ssl_certificate_key  key.pem;
> >>
> >>         ssl_session_timeout  5m;
> >>
> >>         ssl_protocols  SSLv2 SSLv3 TLSv1;
> >>         ssl_ciphers  ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
> >>         ssl_prefer_server_ciphers   on;
> >>
> >>         location / {
> >>             proxy_pass http://vm-keweb5:8066;
> >>             proxy_cache off;
> >>             proxy_connect_timeout 500;
> >>             proxy_send_timeout 500;
> >>             proxy_read_timeout 500;
> >>             proxy_redirect
> >> https://auth.kontur.ru/Authenticate.aspx?back=http%3a%2f%2fr66-extern.kontur.ru%3a8066%2fLogin.aspx
> >> https://auth.kontur.ru/Authenticate.aspx?back=https%3a%2f%2fr66-extern.kontur.ru%2fLogin.aspx;
> >>         }
> >>     }
> >>
> >> }
> >> ---------------------------------------------------------------
> >>
> >> судя по сниферу (и по ответам http), подмена ответа не происходит. как
> >> это можно диагностировать ? в чем я ошибся ?
> >
> >             proxy_redirect
> > - https://auth.kontur.ru/...
> > + http://auth.kontur.ru/...
> >  https://auth.kontur.ru/...
> >
> >
> > --
> > Игорь Сысоев
> > http://sysoev.ru
> >
> > _______________________________________________
> > nginx-ru mailing list
> > nginx-ru at nginx.org
> > http://nginx.org/mailman/listinfo/nginx-ru
> >
> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://nginx.org/mailman/listinfo/nginx-ru

-- 
Игорь Сысоев
http://sysoev.ru



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