Код состояния перенаправления 302 между Tomcat и IIS 7.0 неправильно обрабатывается перенаправителем isapi - PullRequest
0 голосов
/ 07 октября 2010

Недавно мы установили веб-приложение под Tomcat 6, которое подключено через интерфейс перенаправителя isapi (см. http://tomcat.apache.org/connectors-doc/webserver_howto/iis.html) к серверу IIS 7. Соединитель работает правильно во всех случаях, за исключением некоторых страниц в веб-приложении.которые возвращают статус 302 с новым местоположением для перенаправления.

Браузер возвращает 302 и запрашивает новое местоположение, но веб-сервер IIS не перенаправляет запрос на сервер Tomcat и возвращает 404вместо этого, даже если рабочая карта uri выглядит корректно для меня.

Соответствующее рабочее правило uri:

/WebClientServlet/*=worker1

и URL-адрес местоположения нового местоположениявыглядит следующим образом:

http://localhost/WebClientServlet/SBS/cmd:editContent2/workflow:false/articleSearch:false/confirmed:false/objectID:131294/---/fpse/db:test/objectID:131294/Copy+of+0001-Intranet+Home-main-ip+%28DE%29

Ответы [ 2 ]

0 голосов
/ 26 октября 2010

Откажитесь от перенаправителя ISAPI. До сегодняшнего дня это то, что я использовал. Проверьте маршрутизацию запроса приложения для IIS7. Здесь - пошаговое руководство по настройке. Если вы хотите использовать заголовки хоста, посмотрите здесь .

0 голосов
/ 11 октября 2010

Я мог бы решить проблему.Код состояния HTTP на самом деле был 404.11, что означает (в IIS 7), что двойные экранированные последовательности недопустимы.В IIS 7 появилась новая функция, называемая фильтрацией URL с двойным экранированием.Это фильтр безопасности по умолчанию, который запрещает загружать любые URL, содержащие двойные экранированные последовательности.Чтобы решить проблему, отключите эту функцию для веб-сайта, который используется для доступа к приложению tomcat через isapi-redirector.Подробнее смотрите под http://www.iis.net/ConfigReference/system.webServer/security/requestFiltering.

...