urlrewrite地址重写实例
urlrewrite主要实现后天请求中的地址重写,防止被安全漏洞盲注入
http://tuckey.org/urlrewrite/ 下载最新的jar
下面是使用说明:
1.下载urlrewrite,官方下载地址:http://tuckey.org/urlrewrite/dist/urlrewritefilter-2.6.zip
2.解压缩文件,压缩包内文件copy到项目中(压缩包位置 -> 项目位置):
urlrewrite-2.6.0-src/webapp/WEB-INF/lib/urlrewrite-2.6.0.jar -> WebRoot/WEB-INF/lib/urlrewrite-2.6.0.jar
urlrewrite-2.6.0-src/webapp/WEB-INF/urlrewrite.xml -> WebRoot/WEB-INF/urlrewrite.xml
3.将以下代码添加到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>
4.修改urlrewrite.xml
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 2.6//EN"
"http://tuckey.org/res/dtds/urlrewrite2.6.dtd">
<urlrewrite>
<!-- 首页->内容页路径 -->
<rule>
<!-- /read.do?action=topic&id=8a887c3f4236de4501424513812c0273&bid=2 -->
<note>/read-action-id-bid.html</note>
<from>^/read\-(\w+)\-(\w+)\-(\d+)\.html$</from>
<to>/read.do?action=$1&id=$2&bid=$3</to>
</rule>
<!-- 搜索 -->
<rule>
<note>solrSearch-action.html</note>
<from>^/solrSearch\-(\w+)\.html$</from>
<to>/solrSearch.egov?action=$1</to>
</rule>
<rule>
<from>/urltest/status/</from>
<to type="redirect">%{context-path}/rewrite-status</to>
</rule>
<outbound-rule>
<from>/rewrite-status</from>
<to>/test/status/</to>
</outbound-rule>
</urlrewrite>
<urlrewrite decode-using="UTF-8"> <!--action重写 /Feedbook.do?typeid=5--> <rule> <note>action-type.html</note> <from>^/feedBook_(\d+)\.html</from> <to>/Feedbook.do?typeid=$1</to> </rule> <outbound-rule> <from>/Feedbook.do?typeid=(\d+)$</from> <to>/feedBook_$1.html</to> </outbound-rule>
</urlrewrite>

浙公网安备 33010602011771号