urlrewrite伪静态 及多参数传递-附正则表达式语法 [轉]
2015-11-19 14:21
267 查看
首先 加载 urlrewrite包
配置web。xml
[list]
[*]
Java代码
![](http://navylee.iteye.com/images/icon_star.png)
<error-page>
[*] <error-code>404</error-code>
[*] <location>/error.jsp</location>
[*] </error-page>
[*]
[/list]
Java代码
![](http://navylee.iteye.com/images/icon_star.png)
[list]
[*] <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>
[*] </filter-mapping>
[/list]
以及 urlrewrite.xml
Java代码
![](http://navylee.iteye.com/images/icon_star.png)
[list]
[*] <rule>
[*]
[*]//或者 <from>^/test/users/([0-9]+).html$</from>
[*] <from>^/test/users/([0-9]+)(/)?$</from> <!-- (/)? 匹配前面的字符1或0次 匹配 数字结尾的 或者数字/结尾的 11112或 11112/ -->
[*] <to>/test.jsp?users=$1</to>
[*] </rule>
[*]<!-- 静态 -->
[*] <rule>
[*] <from>^/test.html</from>
[*] <to type="forward">/demo.jsp</to>
[*] </rule>
[/list]
<a href="test/users/123456">动态传参测试</a>
<a href="test/users/123456/">动态传参测试</a>
<a href="test.html">静态测试</a>
多参数传递
Java代码
![](http://navylee.iteye.com/images/icon_star.png)
[list]
[*] <rule>
[*] <from>^/test/([0-9]+)/([0-9a-zA-Z]+)$</from> <!-- (/)? 匹配前面的字符1或0次 匹配 数字结尾的 或者数字/结尾的 11112或 11112/ -->
[*] <to type="forward">/tservert?users=$1&tt=$2</to>
[*] </rule>
[*]
[/list]
<to>中 & 用&[list]
[*]
[/list]
Java代码
![](http://navylee.iteye.com/images/icon_star.png)
<?xml version="1.0" encoding="utf-8"?>
<urlrewrite>
<!-- 帖子列表 -->
<rule>
<from>^/forum-(\d+)-(\d+)\.html$</from>
<to type="forward">/servlet/TopicListServelet?sid=$1&page=$2</to>
</rule>
<!-- 帖子列表加分页
<rule>
<from>^/subcate_list_(\d+)\.html$</from>
<to type="forward">/servlet/TopicListServelet?sid=$1</to>
</rule> -->
<!-- 帖子详细信息 -->
<rule>
<from>^/thread-(\d+)\.html$</from>
<to type="forward">/servlet/TopicDetailServlet?tid=$1</to>
</rule>
</urlrewrite>
配置web。xml
[list]
[*]
Java代码
![](http://navylee.iteye.com/images/icon_star.png)
<error-page>
[*] <error-code>404</error-code>
[*] <location>/error.jsp</location>
[*] </error-page>
[*]
[/list]
Java代码
![](http://navylee.iteye.com/images/icon_star.png)
[list]
[*] <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>
[*] </filter-mapping>
[/list]
以及 urlrewrite.xml
Java代码
![](http://navylee.iteye.com/images/icon_star.png)
[list]
[*] <rule>
[*]
[*]//或者 <from>^/test/users/([0-9]+).html$</from>
[*] <from>^/test/users/([0-9]+)(/)?$</from> <!-- (/)? 匹配前面的字符1或0次 匹配 数字结尾的 或者数字/结尾的 11112或 11112/ -->
[*] <to>/test.jsp?users=$1</to>
[*] </rule>
[*]<!-- 静态 -->
[*] <rule>
[*] <from>^/test.html</from>
[*] <to type="forward">/demo.jsp</to>
[*] </rule>
[/list]
<a href="test/users/123456">动态传参测试</a>
<a href="test/users/123456/">动态传参测试</a>
<a href="test.html">静态测试</a>
多参数传递
Java代码
![](http://navylee.iteye.com/images/icon_star.png)
[list]
[*] <rule>
[*] <from>^/test/([0-9]+)/([0-9a-zA-Z]+)$</from> <!-- (/)? 匹配前面的字符1或0次 匹配 数字结尾的 或者数字/结尾的 11112或 11112/ -->
[*] <to type="forward">/tservert?users=$1&tt=$2</to>
[*] </rule>
[*]
[/list]
<to>中 & 用&[list]
[*]
[/list]
Java代码
![](http://navylee.iteye.com/images/icon_star.png)
<?xml version="1.0" encoding="utf-8"?>
<urlrewrite>
<!-- 帖子列表 -->
<rule>
<from>^/forum-(\d+)-(\d+)\.html$</from>
<to type="forward">/servlet/TopicListServelet?sid=$1&page=$2</to>
</rule>
<!-- 帖子列表加分页
<rule>
<from>^/subcate_list_(\d+)\.html$</from>
<to type="forward">/servlet/TopicListServelet?sid=$1</to>
</rule> -->
<!-- 帖子详细信息 -->
<rule>
<from>^/thread-(\d+)\.html$</from>
<to type="forward">/servlet/TopicDetailServlet?tid=$1</to>
</rule>
</urlrewrite>
相关文章推荐
- Nginx [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
- 属性字符串NSAttributedString简易教程
- coredata基本用法(一)
- linxu 端口转发
- 如何创建上下文菜单
- Android 设置Activity窗体 不显示标题和全屏显示
- 基本的线程机制(三)
- CentOS6设置swap分区
- SAP报表上增加命令按钮
- Android Animation实现元素在屏幕上按照指定轨迹运动,以及出现NullPointerException的解决方案
- The Difference between onCreateView and onViewCreated in Fragment
- cocospod安装(还是直接pod下来的比较好,自己拖进来源文件容易报错)
- Android编程之界面跳动提示动画效果实现方法
- 在GIT中增加忽略文件和文件夹
- 自定义AlertDialog,模仿Ios弹出框
- [No000052]大蒜怎么吃最美容?吃大蒜的功效及禁忌
- 基于RTP协议的H.264传输
- matlab学习笔记(十二)---二值图像及其特征提取
- Chromium Weekly 1
- android Application 必须知道的7点