UrlRewrite的简单实用

来源:互联网 发布:淘宝搜索暗语大全 编辑:程序博客网 时间:2024/05/02 00:51

最近在看公司的后台程序,发现web端请求页面的路径比较特别,之后才了解到是使用了urlrewriter,在这块我在网上看了一些资料,大概看一些它最基本的使用
urlrewriter简介:url rewrite俗称伪静态,将我们的动态网页地址转化为静态的地址,如html、shtml,还可以隐藏网页的真正路径,比如:有时候需要将xxx.com/core/001.jsp 转化成显示路径为xxx.com/core_1.jsp

1.下载jar包
在http://tuckey.org/urlrewrite/#download下载最新的jar文件,当前最新的是Beat3.2我下载的是urlrewritefilter-2.6.zip。解压得到urlrewrite-2.6.0.jar 和 urlrewrite.xml

2.新建Web项目
在WebRoot下新建index.jsp,修改其代码如下所示:
页面代码

<%@ page contentType="text/html; charset=UTF-8"%>  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  <html>         <head>                <title>UrlRewriter</title>         </head>         <body>                <%                       String id = (String) request.getParameter("id");                       out.println("<h3> the value is  : " + id +" </h3> ");                %>    </body>  </html>  

3.运行web项目,使用正确路径
将程序发布到Tomcat中,然后在浏览器输入如下地址:
http://localhost:8080/UrlRewrite/index.jsp

4.添加urlrewrite文件,进行重命名
将urlrewrite.jar加入到web项目中,也可以使用到struts对action进行重命名
配置urlrewriter.xml

<?xml version="1.0" encoding="utf-8"?>  <!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 3.1//EN"          "http://tuckey.org/res/dtds/urlrewrite3.1.dtd">  <urlrewrite>         <rule>                <from>/(.*).html</from>                <to>index.jsp</to>         </rule>  </urlrewrite> 

使用的正则表达式
*.html 是一个正则表达式的串。如果你对这个不理解可以学习一下java中正则表达式的应用。
$1 也是一个正则表达式的语言匹配正则中的组捕获。

5. 配置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>  

参考:http://xiaopihai.iteye.com/blog/384386这里写链接内容

0 0
原创粉丝点击