Tomcat基本URL重定向

时间:2009-09-01 17:10:18

标签: html tomcat

使用tomcat,我如何获得http://www.mydomain.com重定向到http://www.mydomain.com/somethingelse/index.jsp的请求?我甚至没有设法从http://mydomain.com显示index.html。

6 个答案:

答案 0 :(得分:95)

你可以这样做: 如果您的tomcat安装是默认安装且未进行任何更改,则默认战争将为ROOT.war。因此,无论何时调用http://yourserver.example.com/,它都会调用默认WAR文件的index.htmlindex.jsp。在webapp/ROOT文件夹中进行以下更改,以便将请求重定向到http://yourserver.example.com/somewhere/else

  1. 打开webapp/ROOT/WEB-INF/web.xml, 删除路径为/index.html/index.jsp的任何servlet映射, 并保存。

  2. 删除webapp/ROOT/index.html(如果存在)。

  3. 使用以下内容创建文件webapp/ROOT/index.jsp

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

    或者如果您想直接转到其他服务器,

    <% response.sendRedirect("http://otherserver.example.com/some/where"); %>
    
  4. 就是这样。

答案 1 :(得分:24)

将您的webapp WAR命名为“ROOT.war”或包含“ROOT”文件夹

答案 2 :(得分:17)

看一下UrlRewriteFilter,这本质上是基于java的mod的mod_rewrite实现。

您需要将其解压缩到Tomcat的ROOT文件夹下的webapps文件夹中;然后,您可以将重定向配置到其WEB-INF/urlrewrite.xml配置文件中的任何其他上下文。

答案 3 :(得分:8)

经测试和工作程序:

转到文件路径 ..\apache-tomcat-7.0.x\webapps\ROOT\index.jsp

删除整个内容或在index.jsp

的顶部声明以下代码行

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

请注意,在jsp文件中,您需要以&lt;%开头,并以%&gt;结束

答案 4 :(得分:6)

我做了什么:

我在ROOT / index.jsp

中添加了以下行
 <meta http-equiv="refresh" content="0;url=/somethingelse/index.jsp"/>

答案 5 :(得分:0)

在Tomcat 8中,您也可以使用rewrite-valve

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

要设置重写阀,请看这里:

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