使用UrlRewriteFilter的实现动态URL静态化
所用基于动态的url http://www.wenhq.com.cn/content.jsp?id=1按照各大搜索引擎的喜好,应该美化成http://www.wenhq.com.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://www.wenhq.com.cn/content.jsp?id=1
静态化为:
http://www.wenhq.com.cn/content/1.html
配置如下:
<rule>
<from>/content/([0-9]+).html</from>
<to>/content.jsp?id=$1</to>
</rule>
注意:有多个参数时,中的连接符号&应该是&
熟悉正则表达式的朋友可能一看就是明白rule的匹配原理了。更多的配置可以参照http://tuckey.org/urlrewrite/manual/
欢迎转载,请注明出处:亲亲宝宝