转使用UrlRewrite Filter对url进行美化转换处理

强大的URL重写技术,可以使我们的URL地址更加简洁美观,不再为?号面一大堆的参数而捆饶.还可以是我们的用户无法知道我们使用的到底是那种Web开发技术,让我们的所有网页后缀可以任意变换,用JSP开发的网站,可以让访问地址的网页后缀变成*.html,*.asp,*.aspx,*.php, *.xml,甚至可以是a/,*.abc等等,使得网页更加安全,从URL里永远看不到真实的目录结构.

1.下载

http://tuckey.org/urlrewrite/dist/urlrewritefilter-2.4-src.zip

http://tuckey.org/urlrewrite/dist/urlrewritefilter-2.4.zip

相关联接:http://tuckey.org/urlrewrite/

2.解压得到urlrewrite-2.4.jar和urlrewrite.xml.

3.创建一个测试用的webapp.

先建立一个Servlet,或者一个JSP文件,随便输出一些东西.

4.引入urlrewrite-2.4.jar,把jar包放到WEB-INF/lib目录下:

编辑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>DEBUG</param-value>

            </init-param>

</filter>

<filter-mapping>

            <filter-name>UrlRewriteFilter</filter-name>

            <url-pattern>/*</url-pattern>

</filter-mapping>

5.在WEB-INF目录下创建urlrewrite.xml,然后定义一些url重写规则。

然后就可以在webapp中使用url重写了。

例如:

<rule>

  <from>(.*).html</from>

  <to>/myweb/$1.jsp</to>

</rule>

<rule>

  <from>/login.html</from>

  <to type="redirect">http://www.myweb.com/login</to>

</rule>

通过上面的配置,我们就可以通过http://localhost:8080/myweb/abc.html访问http://localhost:8080/myweb/abc.jsp

可以通过http://localhost:8080/myweb/login.html访问http://www.myweb.com/login

6.有一个特殊的url,/rewrite-status是用来显示urlrewrite的状态信息的。

UrlRewrite Filter确实简单实用且功能强大,不错。

Tomcat自带的Example里也有url重写的例子,不过功能比较弱。

你可能感兴趣的:(转使用UrlRewrite Filter对url进行美化转换处理)