Перенаправление базовых URL-адресов Tomcat - PullRequest
68 голосов
/ 01 сентября 2009

Используя tomcat, как получить запрос на http://www.mydomain.com для перенаправления на http://www.mydomain.com/somethingelse/index.jsp? мне даже не удалось получить index.html для отображения из http://mydomain.com.

Ответы [ 6 ]

96 голосов
/ 01 сентября 2009

Вы можете сделать это: Если ваша установка tomcat установлена ​​по умолчанию и вы не внесли никаких изменений, то война по умолчанию будет ROOT.war. Таким образом, всякий раз, когда вы будете вызывать http://yourserver.example.com/, он будет вызывать index.html или index.jsp вашего файла WAR по умолчанию. Внесите следующие изменения в папку webapp/ROOT для перенаправления запросов на http://yourserver.example.com/somewhere/else:

  1. Открыть webapp/ROOT/WEB-INF/web.xml, удалить любое отображение сервлета с путем /index.html или /index.jsp, и сохраните.

  2. Удалить webapp/ROOT/index.html, если он существует.

  3. Создайте файл webapp/ROOT/index.jsp с этой строкой содержания:

    <% response.sendRedirect("/some/where"); %>
    

    или, если вы хотите перенаправить на другой сервер,

    <% response.sendRedirect("http://otherserver.example.com/some/where"); %>
    

Вот и все.

24 голосов
/ 01 сентября 2009

Назовите ваше веб-приложение WAR «ROOT.war» или содержащую папку «ROOT»

17 голосов
/ 01 сентября 2009

Взгляните на UrlRewriteFilter , который по сути является реализацией Apache mod_rewrite на основе Java.

Вам нужно будет извлечь его в папку ROOT в папке Tomcat webapps; затем вы можете настроить перенаправления в любой другой контекст в его WEB-INF/urlrewrite.xml файле конфигурации.

8 голосов
/ 22 июня 2016

Протестированная и рабочая процедура:

Перейти к пути к файлу ..\apache-tomcat-7.0.x\webapps\ROOT\index.jsp

удалить весь контент или объявить приведенные ниже строки кода в верхней части index.jsp

<% response.sendRedirect("http://yourRedirectionURL"); %>

Обратите внимание, что в jsp-файле вам нужно начинать указанную выше строку с <% и заканчивать%>

7 голосов
/ 20 марта 2012

Что я сделал:

Я добавил следующую строку внутри ROOT / index.jsp

 <meta http-equiv="refresh" content="0;url=/somethingelse/index.jsp"/>
0 голосов
/ 08 января 2019

В Tomcat 8 вы также можете использовать клапан перезаписи

RewriteCond %{REQUEST_URI} ^/$
RewriteRule ^/(.*)$         /somethingelse/index.jsp

Для настройки клапана перезаписи смотрите здесь:

http://tonyjunkes.com/blog/a-brief-look-at-the-rewrite-valve-in-tomcat-8/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...