Неправильный порт в редиректах

Ruslan nginx-forum на nginx.us
Вт Янв 19 23:04:54 MSK 2010


Использую nginx как фронтенд, tomcat за backend. Фронтенд висит на 8111, бэкенд на 8180. Все хорошо, но когда томкат отдает 302 redirect, джинкс почему-то пребрасывает его на стандартный 80-й порт. Т.е. томкат отдает Location: http://localhost:8180/wicket/index, что на выходе с nginx становится http://www.my.site/wicket/index -- хотя, повторяю, джинкс висит на 8111 порту.

конфиг:

location / {
                rewrite                 /flowplayer/(.*)        /flowplayer/$1  break;
                rewrite                 /pages/(.*)             /pages/$1       break;
                rewrite                 /wicket/(.*)            /wicket/$1      break;
                rewrite                 /(.*)                   /wicket/$1      break;

                proxy_pass         http://localhost:8180/;
                #proxy_redirect     http://localhost:8180/ http://$host:$server_port/;
                #proxy_redirect         default;
                #proxy_redirect         off;
                proxy_redirect          http://localhost:8180/          http://$host:8111/;
                proxy_redirect          http://www.tvintime.info:8180/  http://$host:8111/;
                proxy_redirect          http://tvintime.info:8180/      http://$host:8111/;
                proxy_redirect          http://localhost/               http://$host:8111/;
                proxy_redirect          /       /;

                #port_in_redirect        off;

                proxy_set_header   Host             $host;
                ....
}


закоментированные и раскоментированные варианты proxy_redirect я перепробовал в самых разных комбинациях. 

Сталкивался кто-нибудь с таким? Чем лечится?

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




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