UrlRewrite 小结
2013-06-09 14:55
260 查看
UrlRewrite:UrlRewrite就是我们通常说的地址重写,用户得到的全部都是经过处理后的URL地址,类似于Apache的mod_rewrite。将我们的动态网页地址转化为静态的地址,如html、shtml,还可以隐藏网页的真正路径,比如:有时候需要将xxx.com/news/
type1/001.jsp 转化成显示路径为xxx.com/news_type1_001.html
有点如下:
一:提高安全性,屏蔽内部的url结构.
二:美化URL
三:更有利于搜索引擎的收入,通过对URL的一些优化,可以使搜索引擎更好的识别与收录网站的信息.
【步骤一】下载文件
在http://tuckey.org/urlrewrite/#download下载最新的jar文件,当前最新的是Beat3.2我用的是urlrewritefilter-2.6.zip。解压得到urlrewrite-2.6.0.jar 和 urlrewrite.xml
【步骤二】新建web项目TestUrlRewrite
在WebRoot下新建index.jsp,修改其代码如下所示:
【步骤三】添加urlrewrite文件
将urlrewrite-2.6.0.jar复制到WebRoot\WEB-INF\lib下。
将urlrewrite.xml复制到WebRoot\WEB-INF下,其中urlrewrite.xml代码如下所示:
*.html 是一个正则表达式的串。如果你对这个不理解可以学习一下java中正则表达式的应用。
$1 也是一个正则表达式的语言匹配正则中的组捕获。
【步骤四】修改web.xml
【步骤五】重启tomcat
访问http://localhost:8080/TestUrlRewrite/2.html,页面效果如图所示:
注意:
1.urlrewrite.xml是utf-8.所以如果你要在rule上加note标签为中文的话,也一定是要utf-8
2.UrlRewriteFilter 最好是配置在web.xml的前面filter上,不然有可能对有些url转变失去作用.
3.在写rule的时,如果有多个参数时,中间的连接符号&应该是&
type1/001.jsp 转化成显示路径为xxx.com/news_type1_001.html
有点如下:
一:提高安全性,屏蔽内部的url结构.
二:美化URL
三:更有利于搜索引擎的收入,通过对URL的一些优化,可以使搜索引擎更好的识别与收录网站的信息.
【步骤一】下载文件
在http://tuckey.org/urlrewrite/#download下载最新的jar文件,当前最新的是Beat3.2我用的是urlrewritefilter-2.6.zip。解压得到urlrewrite-2.6.0.jar 和 urlrewrite.xml
【步骤二】新建web项目TestUrlRewrite
在WebRoot下新建index.jsp,修改其代码如下所示:
<%@ page contentType="text/html; charset=UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>测试TestUrlRewrite</title> </head> <body> <% String id = (String) request.getParameter("id"); out.println("<h3> the value is : " + id +" </h3> "); %> </body> </html>
【步骤三】添加urlrewrite文件
将urlrewrite-2.6.0.jar复制到WebRoot\WEB-INF\lib下。
将urlrewrite.xml复制到WebRoot\WEB-INF下,其中urlrewrite.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?id=$1</to> </rule> </urlrewrite>
*.html 是一个正则表达式的串。如果你对这个不理解可以学习一下java中正则表达式的应用。
$1 也是一个正则表达式的语言匹配正则中的组捕获。
【步骤四】修改web.xml
<filter> <filter-name>UrlRewriter</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>UrlRewriter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
【步骤五】重启tomcat
访问http://localhost:8080/TestUrlRewrite/2.html,页面效果如图所示:
注意:
1.urlrewrite.xml是utf-8.所以如果你要在rule上加note标签为中文的话,也一定是要utf-8
2.UrlRewriteFilter 最好是配置在web.xml的前面filter上,不然有可能对有些url转变失去作用.
3.在写rule的时,如果有多个参数时,中间的连接符号&应该是&
相关文章推荐
- urlrewrite使用小结
- urlrewrite使用小结
- urlrewrite使用小结
- urlrewrite使用小结
- urlrewrite使用小结
- urlrewrite使用小结
- java里生成静态HTML文件的小结
- vim的复制粘贴小结
- 深入理解Linux内核个人小结9---进程地址空间
- Android处理图片OOM的若干方法小结
- Ajax之DWR框架使用小结(1)
- 关于VB的WINSOCKET控件使用小结
- Mac OS下PHP环境搭建及PHP操作MySQL常用方法小结
- 面试小结2
- JQuery禁止/恢复按钮readonly和disabled小结
- extern "c"小结
- QtQuick的结构体系小结
- lightroom使用小结七 调整作品 渐变滤镜局部调整色彩
- CASIO显示屏驱动调试小结
- [Erlang 学习笔记]erlang behaviour小结之gen_server