3.最后来讲一讲如何实现网站地址的 URL Rewrite?
1)、创建一个动态web工程
2)、下载地址重写所需的jar包文件,jar文件已经打包在了示例项目压缩包的lib文件夹下,请点击下面的下载按钮下载后自行拷贝到项目的lib目录下并右键 Build path。 另外相关jar文件可以去url rewrite官方下载。
3)、编写 urlrewrite.xml 地址重写规则配置文件,并把它放入项目的WEB-INF目录下(记住,必须放到这个目录下),示例配置规则如下:
/p>
"http://tuckey.org/res/dtds/urlrewrite2.6.dtd">
^/blog/(\w+)$
/index.jsp?hostUrl=$1
以上,rule标签是配置一个url重写规则,可以有多个规则;from标签表示地址重写后的访问路径;
"^/blog/(\w+).aspx$" 这个有正则表达式的字符串,^表示匹配字符串开始,(\w+)表示匹配一个包含多个字母的单词,最后的$符号表示匹配字符串的结尾;
to标签则表示真实访问路径,type属性值可以是REQUEST或者FORWARD,$1表示 from 标签中路径的第一个正则匹配参数;
注意:若有多个参数时会用到&符号,但不能直接写&,要写成 & 转义符代替。
综上所述,上面的配置规则就是,比如访问路径是:localhost:8080/pro/blog/124.aspx,则其实访问到的路径是:localhost:8080/pro/index.jsp?hostUrl=124
然后,还要在项目的 web.xml 文件中配置 url rewrite 的过滤器,过滤规则可以自定义,示例配置如下:
UrlRewriteFilter
org.tuckey.web.filters.urlrewrite.UrlRewriteFilter
UrlRewriteFilter
/blog/*
REQUEST
FORWARD