urlRewriteFilter地址重写
2013-12-04 11:49
363 查看
这里只说明一点,先看如下xml代码:
请求地址应该是:
web.xml
<!-- urlRewriteFilter -->
<filter>
<filter-name>UrlRewriteFilter</filter-name>
<filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
<init-param>
<param-name>logLevel</param-name>
<param-value>WARN</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>UrlRewriteFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- struts filter -->
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.action</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
<dispatcher>INCLUDE</dispatcher>
</filter-mapping>
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 3.2//EN" "http://tuckey.org/res/dtds/urlrewrite3.2.dtd"> <!-- Configuration file for UrlRewriteFilter http://tuckey.org/urlrewrite/ --> <urlrewrite> <rule> <from>/noParams.html</from> <to type="forward">noParams.action</to> </rule> <rule> <from>^/withParams/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/withParams.html</from> <to type="forward">withParams.action?username=$1&offset=$2&pageSize=$3&fieldName=$4</to> </rule> <rule> <from>^/withParams2/([a-zA-Z0-9]+).html$</from> <to type="redirect">%{context-path}/withParams.action?username=$1</to> </rule> <rule> <note>admin by user</note> <from>/admin/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/index.html</from> <to type="forward">/admin/index.jsp?username=$1&offset=$2&pageSize=$3&fieldName=$4</to> </rule> </urlrewrite>
发送的请求地址:<from>/noParams.html</from> 被隐藏的地址:<to type="forward">noParams.action</to>
请求地址应该是:
noParams.html也就是先请求noParams.html,会跳转到noParams.action,这个逻辑感觉有点反。输入之前需要先记住规则。
web.xml
<!-- urlRewriteFilter -->
<filter>
<filter-name>UrlRewriteFilter</filter-name>
<filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
<init-param>
<param-name>logLevel</param-name>
<param-value>WARN</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>UrlRewriteFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- struts filter -->
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.action</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
<dispatcher>INCLUDE</dispatcher>
</filter-mapping>
相关文章推荐
- UrlRewriteFilter重写请求中的url工具
- apache的url_rewrite地址重写中得到问号后面的参数
- IIS URLReWrite URL 重写模块 下载地址
- IIS7地址重写URL Rewrite Module的使用
- iis7配置zend framework的地址重写规则[url_rewrite]
- Urlrewritefilter(Java Web 地址隐藏)
- 用 UrlRewriteFilter 实现 URL 重写
- 解决URL中包含“%2F”导致Apache地址重写mod_rewrite失效的问题
- UrlRewriteFilter重写技术的应用
- Apache & nginx 的地址重写 url_rewrite,省略 index.php
- 用 UrlRewriteFilter 实现 URL 重写
- springMVC学习之url重写:urlrewrite with tuckey UrlRewriteFilter
- UrlRewriteFilter重写技术的应用
- 2017-06-21 在web.xml中使用UrlRewriteFilter来对url进行重写
- IIRF(Ionics Isapi Rewrite Filt er)实现在IIS 5/6上重写Url
- ASP.NET利用URLRewriter重写url地址
- 利用 apache 的 rewrite 功能生成静态页面URL地址
- 【垂直搜索引擎搭建15】HtmlParser中Filter方法(本地URL地址)
- 使用urlrewritefilter发现部分请求url报404
- Apache的rewrite模块(url重写模块)配置