Використання кота, як я отримую запит на http://www.mydomain.com перенаправити http://www.mydomain.com/somethingelse/index.jsp ? мені навіть не вдалося отримати index.html для відображення з http://mydomain.com .
Використання кота, як я отримую запит на http://www.mydomain.com перенаправити http://www.mydomain.com/somethingelse/index.jsp ? мені навіть не вдалося отримати index.html для відображення з http://mydomain.com .
Відповіді:
Назвіть свій веб-додаток WAR “ROOT.war” або папку “ROOT”
Ви можете зробити це: Якщо ваша установка tomcat встановлена за замовчуванням, і ви не внесли жодних змін, тоді війна за замовчуванням буде ROOT.war
. Таким чином, щоразу, коли ви зателефонуєте http://yourserver.example.com/
, він викличе index.html
або index.jsp
ваш стандартний файл WAR. Внесіть наступні зміни у свою webapp/ROOT
папку для перенаправлення запитів на http://yourserver.example.com/somewhere/else
:
Відкрийте webapp/ROOT/WEB-INF/web.xml
, видаліть будь-яке зіставлення сервлетів за допомогою шляху /index.html
або /index.jsp
та збережіть.
Видаліть webapp/ROOT/index.html
, якщо воно існує.
Створіть файл webapp/ROOT/index.jsp
із таким рядком вмісту:
<% response.sendRedirect("/some/where"); %>
або якщо ви хочете направити на інший сервер,
<% response.sendRedirect("http://otherserver.example.com/some/where"); %>
Це воно.
Погляньте на UrlRewriteFilter, який по суті є реалізацією mod_rewrite на основі Java.
Вам потрібно буде витягти його в ROOT
папку під папкою Tomcat webapps
; потім ви можете налаштувати переспрямування на будь-який інший контекст у своєму WEB-INF/urlrewrite.xml
файлі конфігурації.
Випробувана і робоча процедура:
Перейдіть до шляху до файлу
..\apache-tomcat-7.0.x\webapps\ROOT\index.jsp
видалити весь вміст або оголосити наведені нижче рядки коду у верхній частині index.jsp
<% response.sendRedirect("http://yourRedirectionURL"); %>
Зверніть увагу, що у файлі jsp вам потрібно починати наведений вище рядок з <% і закінчувати%>
Що я зробив:
Я додав наступний рядок всередині ROOT / index.jsp
<meta http-equiv="refresh" content="0;url=/somethingelse/index.jsp"/>
<% response.sendRedirect("/some/where"); %>
і зараз це працює з HTTPS.
У Tomcat 8 ви також можете використовувати клапан перезапису
RewriteCond %{REQUEST_URI} ^/$
RewriteRule ^/(.*)$ /somethingelse/index.jsp
Щоб встановити клапан перезапису, дивіться тут:
http://tonyjunkes.com/blog/a-brief-look-at-the-rewrite-valve-in-tomcat-8/