1 下载地址:
http://tuckey.org/urlrewrite/#download
下载的文件(Binary的)结构简单:urlrewrite.xml和lib文件夹下的一个.jar
2 .jar文件放入项目的lib库中,urlrewrite.xml和web.xml放在一块。修改web.xml,添加以下配置:
<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>
我觉得/*这样的通配,并不符合我的预期,我只想对部分路径进行URL的重写,/*可能会造成我想象不到的或者是许微不足道的性能浪费.我把它改成了我需要的:
<filter-mapping>
<filter-name>UrlRewriteFilter</filter-name>
<url-pattern>/member/*</url-pattern>
</filter-mapping><filter-mapping>
<filter-name>UrlRewriteFilter</filter-name>
<url-pattern>/article/*</url-pattern>
</filter-mapping>等...
3 .urlrewriter.xml的配置
先提一下urlrewriter.xml中原有的几个例子:
<rule>
<from>/some/old/page.html</from>
<to type="redirect">/very/new/page.html</to>
</rule>/**从一个文件到另一个文件的转发 如果不使用正则表达式,这样的配置真是把简单的问题复杂化了**/<rule>
<from>/some/olddir/(.*)</from>
<to type="redirect">/very/newdir/$1</to>
</rule>/**重定向到一个目录 我觉得实际应用中可能用得不多**/<rule>
<from>/products/([0-9]+)</from>
<to>/products/index.jsp?product_id=$1</to>
</rule>/**这种是最常用的,通过正则对请求路径进行匹配,并把分组作为参数 ,实际转到到<to>的路径
**/
说明一下,如果你在
Filter配置中使用了所有路径通配符<url-pattern>/*</url-pattern>
在配置urlrewriter.xml中的<from>时,随便怎么写路径无所谓,但若
象我一样使用了
<url-pattern>/memeber/*</url-pattern>,那么在<from>标签中也要写上/memeber/(你的正则分组)
以便在访问与<from>匹配的路径时,Filter能够执行最后一点,不得不说,举个例子
<rule>
<from>/member/(.*)</from>
<to>/html/member.do?username=$1</to>
</rule><rule>
<from>/article/(.*)</from>
<to>/html/article.do?articleid=$1</to>
</rule>
<rule>
<from>/member/article/(.*)</from>
<to>/html/another/article.do?articleid=$1</to>
</rule>当你访问http://localhost
/member/article/1111 会显示哪一个页面呢?
结果应该不是意想中的
/html/another/article.do?articleid=1111.
我想大概是因为<from>中的路径,相当于filter中的<url-pattern>
分享到:
相关推荐
urlrewritefilter-4.0.3.jar urlrewrite.xml举例 web.xml(filter的配置)
主要用于在web应用中配置,进行url的重写,美化网站链接
与使用正则表达式的ISAPI Filter(简称IF)Rewrite产品不同,本IF用简单配置实现虚拟URL与实际处理的Web程序映射,优劣自鉴。以下为配置示例: [bbsfiles] ext = /bbsfiles/[*] mapto = /printinfo1.asp [aspx] ext=/...
博文链接:https://davylee.iteye.com/blog/157550
urlrewrite是个过虑器,它将会过虑用户的所有请求,符合规则的便对其进行重定向。rule结点中from的规则默认使用的是正则表达式来匹配的,当用户访问服务器时的URL会与该配置相比较,如果符合规则就会按照下面to结点...
而且使用本组件,您无需安装任何类似于ISAPI Rewrite filter的ISAPI组件。本组件是免费开源的,遵循MIT-style licence开源协议。 UrlRewriter.NET是一个非常棒的搜索引擎优化(Search Engine Optimization,简称SEO...
URLRewrite 目前,大部份站点采用,isapi-rewrite litte与Asp.net来实现URL重写,MYIIS-VIF能提供细化到域名站点的重写策略,一次加载,多次使用,使URL 的内部转化接近0,同时能不重新启动IIS的情况下使配置生效...
要解决这个问题,一个办法是使用IIE URL Rewrite Extension,但是它配置起来挺复杂的,所以在这里我们来利用MVC自己的特性来解决这一问题(通过注册全局的filter),添加如下class: public class ...
UrlRewriter.NET是一个开源的、轻量级、高配置的URL重写组件,支持ASP.NET 1.1 和ASP...而且使用本组件,您无需安装任何类似于ISAPI Rewrite filter的ISAPI组件。本组件是免费开源的,遵循MIT-style licence开源协议。
mod_rewrite mod_setenvif mod_so mod_speling mod_ssl mod_status mod_suexec mod_unique_id mod_userdir mod_usertrack mod_version mod_vhost_alias mpmt_os2(MPM) Apache MPM 公共指令 mpm_netware(MPM) winnt...
1. Introduction to Zend Framework 1.1. 概述 1.2. 安装 2. Zend_Acl 2.1. 简介 2.1.1. 关于资源(Resource) 2.1.2. 关于角色(Role) 2.1.3. 创建访问控制列表(ACL) ...14.5.5. Adding Filter ...
这个优势主要是针对阿里巴巴及属下网站而言。因为Webx在阿里巴巴和淘宝用了很多年。对于这种超大访问量的电子商务网站,Webx经受了考验,被证明是成熟可靠的。 开放和扩展性 • 对Spring的直接支持 —— Spring是...