美文网首页
Tomcat重定向

Tomcat重定向

作者: Aubin | 来源:发表于2018-03-05 23:06 被阅读125次

tomcat默认情况下不带www的域名是不会跳转到带www的域名的,而且也无法像apache那样通过配置.htaccess来实现。如果想要把不带“www'的域名重定向到带”www"域名下,又不想写代码,可以使用UrlRewriteFilter来实现。

一、前期准备

1.安装JDK

yum install java-1.8.0-openjdk-devel

vim /etc/profile.d/jdk.sh
export JAVA_HOME=/usr/java/latest                   # 首先定义JAVA_HOME的环境变量
export PATH=$JAVA_HOME/bin:$PATH                    # 然后追加

.  /etc/profile.d/jdk.sh

2.安装tomcat

yum install tomcat tomcat-admin-webapps.noarch \
tomcat-webapps.noarch tomcat-docs-webapp.noarch

二、urlRewriteFilter实现重定向

urlRewriteFilter是一个用于改写URL的Web过滤器,类似于Apache的mod_rewrite。适用于任何Web应用服务器(如Tomcat,jboss,jetty,Resin,Orion等)。其典型应用就把动态URL静态化,便于搜索引擎爬虫抓取你的动态网页。

1.下载UrlRewriteFilter

UrlRewriteFilter的官方网站http://tuckey.org/urlrewrite/
jar包要放在应用的WEB-INF/lib目录中

yum install wget -y
cd /usr/share/tomcat/webapps/ROOT/WEB-INF/lib/wget http://urlrewritefilter.googlecode.com/files/urlrewritefilter-4.0.3.jar

2.配置过滤规则

在应用的./WEB-INF/目录下创建一个名为urlrewrite.xml规则文件,名称千万不能出错!!

vim ./WEB-INF/urlrewrite.xml
    <urlrewrite>
      <rule>
          <name>seo redirect</name>
          <condition name="host" operator="notequal">^www.example.com</condition>
          <condition name="host" operator="notequal">^localhost</condition>
          <from>^/.*</from>
          <to type="redirect" last="true">http://www.example.com/$1</to>
      </rule>
    </urlrewrite>

3.配置tomcat

在应用的`./WEB-INF/中的web.xml中添加

vim ./WEB-INF/web.xml
<web-app>           # 要在web-app中,在其它servlet mapping前加入
......
      <filter>
      <filter-name>UrlRewriteFilter</filter-name>
      <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
    </filter>
    <filter-mapping>
      <filter-name>UrlRewriteFilter</filter-name>
      <url-pattern>/*</url-pattern>
      <dispatcher>REQUEST</dispatcher>
      <dispatcher>FORWARD</dispatcher>
    </filter-mapping>
</web-app>

参考
http://tuckey.org/urlrewrite/

相关文章

  • Tomcat重定向

    tomcat默认情况下不带www的域名是不会跳转到带www的域名的,而且也无法像apache那样通过配置.htac...

  • 反向代理情况下配置nginx错误页面跳转

    如果是反向代理,后台Tomcat 处理报错抛出404,想把这个状态让Nginx反馈给客户端或者重定向到某个连接。 ...

  • webapps

    Web项目的WEB-INF目录使用说明以及重定向与转发写这篇文章的原因是看到了Tomcat下面的Webapps下面...

  • 第07章重定向管道

    输出重定向案例 > < 脚本中使用重定向 2.输入重定向及结合案例 管道 | 重定向和管道的符号对比。重定向输出到...

  • shell 笔记 Day1

    重定向: (覆盖重定向), >>(追加重定向) , 2>(重定向错误信息) , &>(错误正确都重定...

  • 《Linux就该这么学 》笔记(六)| 管道符、重定向和环境变量

    1. 重定向 重定向技术的 5 种模式 标准覆盖输出重定向 标准追加输出重定向 错误覆盖输出重定向 错误追加输出重...

  • 永久性重定向和302临时性重定向

    什么是重定向? 所谓重定向就是将网页自动转向重定向,即:301永久性重定向和302临时性重定向。实施301后,新网...

  • 2019-06-13 重定向301和302

    什么是重定向? 所谓重定向就是将网页自动转向重定向,即:301永久性重定向和302临时性重定向。实施301后,新网...

  • 重定向

    输出重定向 输入重定向 错误重定向 管道 shell中特殊符号

  • Linux重定向day13

    1.重定向概述2.重定向的输出输入3.进程管道技术 一、重定向概述 什么是重定向:Linux重定向是指修改原来默认...

网友评论

      本文标题:Tomcat重定向

      本文链接:https://www.haomeiwen.com/subject/xapkfftx.html