Re: Неверное перенаправление на странице
Maxim Dounin
mdounin at mdounin.ru
Wed Jan 29 09:13:59 UTC 2014
Hello!
On Wed, Jan 29, 2014 at 02:28:08AM -0500, mnsold wrote:
> > Либо вы неправильно пишите, куда возвращается redirect, либо
> > что-то недосмотрели в конфиге.
> >
> > Совет: сделайте nginx.conf, содержащий минимум необходимых
> > настроек и никаких include'ов (кроме разве что стандартных
> > mime.types) и попробуйте воспроизвести проблему с ним.
> > Художественное выпиливание конфигов из кусочков - верный способ
> > запутаться.
> >
> > Ну и debug log тоже неплохо помогает смотреть, что же на самом
> > деле происходит. Я просто оставлю эту ссылку здесь:
> >
> > http://wiki.nginx.org/Debugging
>
> дебаг я с удовольствеим посмотрел бы, директива error_log выставлена в debug
> но ничего не пишет у меня:
> error_log /var/log/nginx/error.log debug;
>
> не вижу опции --with-debug
[...]
> устанавливал из репозитория отсюда
> deb http://nginx.org/packages/mainline/debian/ squeeze nginx
> deb-src http://nginx.org/packages/mainline/debian/ squeeze nginx
Там же есть пакет nginx-debug, в котором тот же nginx, но
собранный с --with-debug.
[...]
> Сейчас исправил все имена на полные имена, убрал лишние комменты для лучшей
> читаемости, вот к чему это привело:
> - ранее я писал, что если пишу так как Вы и советовали, то :
> proxy_redirect http://alys:8180/ /;
> или
> proxy_redirect default;
> то перебрасывает на
> http://alys:8180/SASLogon/index.jsp?_sasapp=Web+Report+Studio+4.3&
>
> - теперь поведение стало единообразным, как в первом посте, т.е. если
> указать
> proxy_redirect http://alys.lan.iac.spb.ru:8180/ /;
> или
> proxy_redirect default;
> то получаю: "Неверное перенаправление на странице" ну и в access логе много
> раз подряд ""GET /SASWebReportStudio/defaultHandler.jsp HTTP/1.1" 302 0 "-"
> "
Ок, с одной проблемой разобрались. Теперь осталось понять, почему
бекенду не нравится запрос к "/SASWebReportStudio/defaultHandler.jsp" и
почему он возвращает перенаправление снова и снова.
Обычно это бывает, когда бекенду не нравится имя, по которому к
нему обратились. Возможные направления решения:
1) Убрать из конфига proxy_set_header Host, т.е. обращаться к
бекенду по его собственному имени, alys.lan.iac.spb.ru:8180.
Обычно так всё работает, но может привести к некорректным ссылкам
в возвращаемых бекендом страницах.
2) Убедить бекенд, что он должен отзываться на то имя, к которому
обращаются пользователи. Обычно это делается где-то в настройках
бекенда.
--
Maxim Dounin
http://nginx.org/
Подробная информация о списке рассылки nginx-ru