使用urlrewrite 强制访问www打头的域名

#什么是urlrewrite

如其名,通过这个工具可以通过配置简单地修改url访问策略。比如强制访问带www头的域名等

#使用urlrewrite ##简单流程

  1. 添加依赖(或jar包)
        <dependency>
            <groupId>org.tuckey</groupId>
            <artifactId>urlrewritefilter</artifactId>
            <version>4.0.4</version>
        </dependency>
    
  2. 在WEB-INF目录下添加urlrewrite.xml配置文件。注意是WEB-INF目录下,跟一般配置在自己的resources目录下不同,源码中写死了就是在/WEB-INF/urlrewrite.xml
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 4.0//EN" "\\urlrewrite4.0.dtd">
<!-- 这个例子是强制访问带www打头的域名地址 -->
<urlrewrite>
<rule>
    <name>Canonical Hostnames</name>
    <note>
        The goal of this rule is to force the use of a particular hostname, in preference to other hostnames which
        may be used to reach the same site. For example, if you wish to force the use of www.example.com instead of
        example.com, you might use a variant of the following recipe.
    </note>
    <!-- 只有满足condition的才可以 -->
    <!-- 第一个条件为访问完整域名的请求不做(注意notequal)处理,否则会造成循环重定向 -->
    <condition name="host" operator="notequal">^www\.example\.com</condition><!-- 注意这里的`.`一定要加反斜杠,谋者会被正则表达式误读 -->
    <!-- 空请求不处理 -->
    <condition name="host" operator="notequal">^$</condition>
    <from>^/(.*)</from><!-- 注意这里的(.*)是将括号内的值当作一个参数传给后续,可设多个,%1表示第一个 -->
    <to type="redirect" last="true">http://www.example.com/$1</to>
</rule>
</urlrewrite>
  1. 在web.xml中添加filter
    <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>
  1. 重启服务器,即可

转载于:https://my.oschina.net/djzhu/blog/849583

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值