您的位置:首页 > 其它

URL重写案列整理思路

2017-08-29 17:53 141 查看
工作原理,说白了它就是一个简单的过滤器(Filter)
 第一步:下载urlrewrite
 第二步:在web.xml中初始化。加上下面的代码:
<!-- url重写start -->
<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>
<!-- url重写end -->

第三步:在WEB-INF目录下建一个urlrewrite.xml文件。 所有的规则配置都写在这里。第一个常用个规则就是站内的简单重写。

<rule>  
  <note>一些说明</note>  
  <from>写上你自己定义的访问地址</from>    
  <to>就是实际的访问地址</to>    
</rule>  
<rule>  
   <note>  
   假设实际的访问地址是:http://yousite.com/entity.htm?category=user&page=2,即to  
   而我们想把它重写为http://yousite.com/entity/uesr/page_2.html,即from  
   我们就应该这样的写:  
   </note>  
  <from>^/(\w+)/(\w+)/page_(\d+)\.html$</from>    
  <to type="forward">/$1.htm?category=$2&page=$3</to>    
 </rule>  

c80c
<rule>  
   <note>  
   假设实际的访问地址是:http://localhost:8080/user/search.action?gender=Male&name=Mary,即to  
   而我们想把它重写为http://localhost:8080/user/search/Male/Mary.html,即from  
   我们就应该这样的写:  
   </note>  
  <from>^/(\w+)/(\w+)/(\w+).html$</from>    
 
<to>/$1.action?gender=$2&name=$3</to>  
 </rule>

 简单的介绍一下常用的正规表示式:  
代码 说明 
. 匹配除换行符以外的任意字符 
\w 匹配字母或数字或下划线或汉字 
\s 匹配任意的空白符 
\d 匹配数字 
\b 匹配单词的开始或结束 
^ 匹配字符串的开始 
$ 匹配字符串的结束
常用的&要用  &来表示。$1,$2代表与你配置正规表达式/(\w+)/(\w+)/相对应的参数。<to type="forward">默认的是 type="forward".
  另一个常用的规则就是连接外部的网站。就要用到。<to type="redirect">

<rule>  
   <from>^/rss/yahoo\.html$</from>  
      <to type="redirect">http://add.my.yahoo.com/rss? url=http://feed.feedsky.com/MySiteFeed[/url]
  
    </to>  
</rule>  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: