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

前期准备
安装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
安装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静态化,便于搜索引擎爬虫抓取你的动态网页。

下载UrlRewriteFilter

UrlRewriteFilter的官方网站//tuckey.org/urlrewrite/

jar包要放在应用的WEB-INF/lib目录中

yum install wget -y
cd /usr/share/tomcat/webapps/ROOT/WEB-INF/lib/
wget //central.maven.org/maven2/org/tuckey/urlrewritefilter/4.0.3/urlrewritefilter-4.0.3.jar
配置过滤规则

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

vim ./WEB-INF/urlrewrite.xml
      
          seo redirect
          ^www.example.com
          ^localhost
          ^/.*
          //www.example.com/$1
      
配置tomcat

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

vim ./WEB-INF/web.xml
      
      UrlRewriteFilter
      org.tuckey.web.filters.urlrewrite.UrlRewriteFilter
    
    
      UrlRewriteFilter
      /*
      REQUEST
      FORWARD
    

原文来自:

本文地址://q13zd.cn/tomcat-url-rewrite.html编辑:何云艳,审核员:逄增宝

本文原创地址://q13zd.cn/tomcat-url-rewrite.html编辑:向云艳,审核员:暂无