您的位置:首页 > 其它

使用UrlRewriteFilter的实现动态URL静态化

2010-07-18 21:43 369 查看

使用UrlRewriteFilter的实现动态URL静态化

所用基于动态的url http://test.cn/content.jsp?id=1按照各大搜索引擎的喜好,应该美化成http://test.cn/content/1.html静态网页的方式,尽管目前的google及几大搜索引擎宣称支持动态页网的抓取,但与传统的html文件相比较抓取率仍不在一个数量级。
目前有一个解决方法,通过UrlRewriteFilter可以完全实现动态URL静态化,你可以将它直接应用到你的web应用中,不管你用的是jsp+javabean还是struts.
下面是使用方法:
1、下载http://tuckey.org/urlrewrite/#download目前正式版本是2.6,解压缩后将文件考到相应的web-inf/lib和web-inf下,。
2、配置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>*.html</url-pattern>
</filter-mapping>
根据自己的需要,将相应目录下的url转给UrlRewriteFilter来处理。
3、配置urlwrite规则文件WEB-INF/urlrewrite.xml
http://test.cn/content.jsp?id=1
静态化为:
http://test.cn/content/1.html

配置如下:
<rule>
<from>/content/([0-9]+).html</from>
<to>/content.jsp?id=$1</to>
</rule>

注意:有多个参数时,中的连接符号&应该是&

熟悉正则表达式的朋友可能一看就是明白rule的匹配原理了。更多的配置可以参照http://tuckey.org/urlrewrite/manual/

原文链接:http://www.wenhq.com/article/view_360.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: