都市圣人系统最新章节:使用URLRewrite 实现URL伪静态化 - 叛逆少年的日志 - 网易博客

来源:百度文库 编辑:九乡新闻网 时间:2024/07/14 05:33:20
使用URLRewrite 实现URL伪静态化

2010-03-29 23:07:28|  分类:学习资料整理阅读335评论1  字号:大中小 订阅

1.首先在 http://tuckey.org/urlrewrite/#download 下载urlrewirtefilter

2.解压所下载的文件,把urlrewrite-2.6.0.jar复制到项目的WebRoot/WEB-INF/lib/目录下

3.把urlrewrite.xml复制到项目的WebRoot/WEB-INF/目录下

4.在web.xml文件中加入filter

  1.   
  2. UrlRewriteFilter  
  3.    org.tuckey.web.filters.urlrewrite.UrlRewriteFilter  
  4.      
  5.     logLevel  
  6.     WARN  
  7.      
  8.   
  9.   
  10.    UrlRewriteFilter  
  11.    /*  
  12.   

 

5.配置urlrewrite.xml
1.普通url静态化 例如:
要把http://localhost/prjtest/user/list.jsp转换成http://localhost/prjtest/user/list.html这种是最简单的,当一个servlet跳转到list.jsp页面列出user列表时,在urlrewrite.xml中这样配置:

  1.   
  2. ^/user/list.html  
  3.    /user/list.jsp  
  4.   


当请求/user/list.html这个页面时,实际上相当于请求/user/list.jsp页面,在servlet的跳转要这样写:response.sendRedirect("./user/list.html");

2要把http://localhost/prjtest/user/view.jsp?cid=1&cname=admin转换成http://localhost/prjtest/user/view/1_admin.html在urlrewrite.xml中这样配置:

  1.   
  2. ^/user/view/([0-9]+)_([a-z]+).html$  
  3. /user/view.jsp?cid=$1cname=$2  
  4.   

6特别说明
为什么地址栏不变?
原因就在于浏览器显示的是最后被给定的URL。当一个URL被提交后,在某一个组件返回一个相应给浏览器之前,你的应用可能转发请求多次。所有这些都发生在服务器端,浏览器并不知道发生了什么事。当一个Http相应被放回时,它并没有包含地址信息,所以浏览器仅仅显示用来作为初始请求的地址。

要想让地址栏也变成静态化的URL,很简单,将改成即可

 

/-------------------------------------------------------------------------------

/------------- 转jsp相同,需要修改的地方是: ------------------------------


        struts2
        *.do
        REQUEST
      FORWARD
      INCLUDE
   

1.1URLRewirte的用处
1.满足搜索引擎的要求。

2.隐藏技术实现,提高网站的移植性。

3.满足美感的要求(个人感觉这个用处太牵强)。

1.2项目部署
1.首先在http://tuckey.org/urlrewrite/下载urlrewirtefilter,现在有2.6.0和3.2.0两个版本,这里我选择的是前面一个稳定版本。

2.解压所下载的文件,把urlrewrite-2.6.0.jar复制到项目的WebRoot/WEB-INF/lib/目录下,然后编译。

3.把urlrewrite.xml复制到项目的WebRoot/WEB-INF/目录下

4.在web.xml文件中加入以下:

1

2

3   UrlRewriteFilter

4   org.tuckey.web.filters.urlrewrite.UrlRewriteFilter

5  

6     logLevel

7     WARN

8  

9

10

11   UrlRewriteFilter

12   /*

13


5.需要配置urlrewrite.xml文件来实现url静态化,下面将详细说明

1.3 如何静态化
到这里相关的配置已经完成,下面看如何把动态地址静态化:

(1)普通url静态化

例如:要把http://localhost/prjtest/user/list.jsp转换成http://localhost/prjtest/user/list.html

这种是最简单的,当一个servlet跳转到list.jsp页面列出user列表时,在urlrewrite.xml中这样配置:

1

2   ^/user/list.html

3   /user/list.jsp

4


当请求/user/list.html这个页面时,实际上相当于请求/user/list.jsp页面

在servlet的跳转要这样写:

response.sendRedirect("./user/list.html");

(2)带参数的url静态化

例如:要把http://localhost/prjtest/user/view.jsp?cid=1&cname=admin转换成

       http://localhost/prjtest/user/view/1_admin.html

在urlrewrite.xml中这样配置:

1

2   ^/user/view/([0-9]+)_([a-z]+).html$

3   /user/view.jsp?cid=$1&cname=$2

4


当请求/user/view/1_admin.html这个页面时,实际上相当于请求/user/list.jsp?cid=1&cname=admin页面,在servlet的跳转要这样写(cid,cname为变量):

response.sendRedirect("./user/view/"+ cid +"_"+ cname +".html");

注意:配置文件中用"&"来代替"&"。

一个通用的正则表达式:[a-zA-Z0-9]+

1.4 小结
      使用URLRewirte可以方便的进行地址伪静态化,配置规则也相对比较方便。不过在项目设计的时候需要制定地址匹配规则,以使在开发的过程中直接利用该规则进行编码。如果是对已有的项目进行地址伪静态化比较麻烦,需要对所有的页面、跳转进行修改,工作量较大,同时也容易忽略一些URL。

       一句话,其实它并没有达到静态化要求,只是相当于将地址进行了改写。

分享到:         阅读(335)|评论(1)|引用 (0)|举报 电子表格的使用技巧 JAVA面试题1-10

相关文章

  • 使用UrlRewrite Filter对url进行美化转换处理
  • 用UrlRewrite生成伪静态
  • UrlRewrite 是用来干什么的?
  • jsp 用urlrewrite 实现URL 重写
  • URL Rewrite

最近读者

登录后,您可以在此留下足迹。 wangguoc fhq5566@ 彬彬 senzom lovezkq@ 紫阳 逆天雪 遇难

评论

点击登录|昵称:   2010-03-30 22:05 随意的风

此方法,只是实现了你可以通过html的后缀名来访问,不是无论是是 .jsp进入还是什么都在地址栏显示 html后缀名。

回复           公司简介-联系方法-招聘信息-客户服务-隐私政策-博客风格-手机博客- 订阅此博客

网易公司版权所有 ?1997-2011


使用URLRewrite 实现URL伪静态化 - 叛逆少年的日志 - 网易博客 使用urlrewritefilter动态url静态化 第一个伪静态(url重写)测试 - ^特殊П佀命^ - 博客园 url中的jsessionid解释 - 梧桐的日志 - 网易博客 一起谈.NET技术,ASP.NET伪静态的实现及伪静态的意义 IIS主机下 利用httpd.ini实现wordpress页面的伪静态化 少年“猪”事 - 张鸣的日志 - 网易博客 火烧圆明园的背后:清廷竟视英法联军为“叛逆” - linaou的日志 - 网易博客 GCC静态链接与动态链接 - 小呆学JAVA的日志 - 网易博客 网易博客“日志编辑器”的使用 网易博客“日志编辑器”的使用 动态的URL变成静态的URL可以UrlRewriteFilter来处理 使用Varnish+ESI实现静态页面的局部缓存(思路篇) 少年“自我中心”的叛逆期问题解说 苏联在二战中竟同伪满洲国建交 - 石學峰的日志 - 网易博客 引用 说完伪高手,再说几个真高手。 - zorro的日志 - 网易博客 QQ不为人知的使用技巧 - 理睬的日志 - 网易博客 引用 优雅高贵少年公主,围巾帽帽 - wsd661982的日志 - 网易博客 两名行窃少年被抓后遭反捆双手跪街示众(图) - 真光的日志 - 网易博客 【西泠原创】《少年史》(外一首) - 西泠弋人的日志 - 网易博客 河北邢台政府客车在警车开道下闯红灯撞残少年 - 蝉公二世的日志 - 网易博客 nLite使用详解 - 南南的日志 - 网易博客 手机日常使用技巧大全 - 理睬的日志 - 网易博客 使用电脑小巧门 - 至死不渝的日志 - 网易博客