Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: как правильно написать правило proxy_redirect ?
подтверждаю, поменял на линукс, конфиг один в один, работает ))
вернемся попозже к виндовой версии. в принципе, исходники есть, покопаюсь.
3 августа 2010 г. 11:46 пользователь Igor Sysoev <igor@xxxxxxxxx> написал:
> On Tue, Aug 03, 2010 at 10:51:28AM +0600, Илья Шипицин wrote:
>
>> попробовал версию под Windows 0.8.47, эффект такой же. особенность
>> nginx под Windows ?
>
> Покажите кусок отладочного лога в районе 'http proxy header: "Location: ...'.
>
>> 2 августа 2010 г. 17:01 пользователь Igor Sysoev <igor@xxxxxxxxx> написал:
>> > On Mon, Aug 02, 2010 at 04:55:10PM +0600, Илья Шипицин wrote:
>> >
>> >> общение между nginx и бэкендом идет по http на порту 8066, это так, в
>> >> редиректе бэкенд указывает
>> >>
>> >>
>> >> Location:
>> >> https://auth.kontur.ru/Authenticate.aspx?back=http%3a%2f%2fr66-extern.kontur.ru%3a8066%2fLogin.aspx
>> >>
>> >>
>> >> примерно до половины все правильно, после параметра ?back= идет текст,
>> >> который хочется поправить, чтобы получилось вот так
>> >>
>> >>
>> >> Location:
>> >> https://auth.kontur.ru/Authenticate.aspx?back=https%3a%2f%2fr66-extern.kontur.ru%2fLogin.aspx
>> >
>> > У меня заменяется:
>> >
>> > 2010/08/02 15:00:10 [debug] 29585#0: *1 http proxy header: "Location:
>> > https://auth.kontur.ru/Authenticate.aspx?back=http%3a%2f%2fr66-extern.kontur.ru%3a8066%2fLogin.aspx"
>> > 2010/08/02 15:00:10 [debug] 29585#0: *1 http proxy header done
>> > 2010/08/02 15:00:10 [debug] 29585#0: *1 rewritten location:
>> > "https://auth.kontur.ru/Authenticate.aspx?back=https%3a%2f%2fr66-extern.kontur.ru%2fLogin.aspx"
>> >
>> >
>> >> 2 августа 2010 г. 16:52 пользователь Igor Sysoev <igor@xxxxxxxxx> написал:
>> >> > On Mon, Aug 02, 2010 at 04:48:43PM +0600, Илья Шипицин wrote:
>> >> >
>> >> >> нет, поменять надо то, что идет параметром в ?back=....
>> >> >> протокол перед auth.kontur.ru должен остаться прежним, https
>> >> >
>> >> > Насколько я понимаю, бэкенд отвечает "http://..." или нет ?
>> >> >
>> >> >> 2 августа 2010 г. 16:46 пользователь Igor Sysoev <igor@xxxxxxxxx>
>> >> >> написал:
>> >> >> > 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@xxxxxxxxx
>> >> >> > http://nginx.org/mailman/listinfo/nginx-ru
>> >> >> >
>> >> >> _______________________________________________
>> >> >> nginx-ru mailing list
>> >> >> nginx-ru@xxxxxxxxx
>> >> >> http://nginx.org/mailman/listinfo/nginx-ru
>> >> >
>> >> > --
>> >> > Игорь Сысоев
>> >> > http://sysoev.ru
>> >> >
>> >> > _______________________________________________
>> >> > nginx-ru mailing list
>> >> > nginx-ru@xxxxxxxxx
>> >> > http://nginx.org/mailman/listinfo/nginx-ru
>> >> >
>> >> _______________________________________________
>> >> nginx-ru mailing list
>> >> nginx-ru@xxxxxxxxx
>> >> http://nginx.org/mailman/listinfo/nginx-ru
>> >
>> > --
>> > Игорь Сысоев
>> > http://sysoev.ru
>> >
>> > _______________________________________________
>> > nginx-ru mailing list
>> > nginx-ru@xxxxxxxxx
>> > http://nginx.org/mailman/listinfo/nginx-ru
>> >
>>
>> _______________________________________________
>> nginx-ru mailing list
>> nginx-ru@xxxxxxxxx
>> http://nginx.org/mailman/listinfo/nginx-ru
>
> --
> Игорь Сысоев
> http://sysoev.ru
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@xxxxxxxxx
> http://nginx.org/mailman/listinfo/nginx-ru
>
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru
|