一:到 http://tuckey.org/urlrewrite/ 下载 urlrewrite架包(推荐2.6.0)
二:解压所下载的文件,把urlrewrite-2.6.0.jar复制到项目的WebRoot/WEB-INF/lib/目录下
三:把urlrewrite.xml复制到项目的WebRoot/WEB-INF/目录下
四:在web.xml文件中加入以下
<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>
(UrlRewriteFilter这个可以更改,但是如果要更改的话,就两个UrlRewriteFilter都一起改为相同的字符串,比如说都改为:aaa也是可以的!其实这个在urlrewrite.xml里有说明,仔细看看就知道了!哦,忘了,上面这段代码加到:</welcome-file-list>之后,)
五:接下来就是urlrewrite.xml里面的规则的写法了
1,单页面规则写法:(记得不要把项目名写到里面去了!)
<rule>
<from>^/index.html</from>
<to>/index.jsp</to>
</rule>
2,带一个参的URL规则写法
把:showNews.jsp?id=参数 伪成:shownews_参数.html
<rule>
<from>^/shownews_(.[0-9]*).html</from>
<to>/showNews.jsp?id=$1</to>
</rule>
()里面是正则表达式,自己去找找这方面的知识,美元符号$1的意思是匹配第一个正则表达式
3,带两个参和多个参的URL规则写法
把showNews.jsp?id=参1&type=参2伪成news-参1-参2.html
<rule>
<from>^/news-(.[0-9]*)-(.[0-9]*).html</from>
<to>/showNews.jsp?id=$1&type=$2</to>
</rule>
注意一点:用“&”来代替”&“,多个参的url规则基本类似,依葫芦画瓢,应该能写出来!哦,还有一点,那就是jsp页面上的url的写法,href=”shownews_<%=news.getNewsID() %>.html”,如果前面加项目名的话,就再多加个”/”,JSP用urlrewrite实现伪静态就这么些步骤!慢慢去摸索,自己摸索出来的,估计这一生都不会忘记!
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。