Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1478383
  • 博文数量: 254
  • 博客积分: 8696
  • 博客等级: 中将
  • 技术积分: 2961
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-03 16:46
文章分类

全部博文(254)

文章存档

2015年(4)

2014年(18)

2013年(16)

2012年(8)

2011年(25)

2010年(2)

2009年(74)

2008年(107)

分类: 系统运维

2008-07-26 15:53:57

appfuse中使用了UrlRewrite.实现了url的重写,这样有什么用处呢?上网搜了一把,大体上有以下好处:

url重写是实现会话跟踪的一种方式

1、满足搜索引擎的要求
某些搜索引擎不能支持动态页面的抓取,大量的信息就不能被潜在用户搜索到。用UrlRewrite技术你可以把
变成 这样他们就会被搜索引擎收录了。google虽然可以抓取动态页面,但是google对动态页面的评分一般低于静态页面。所以,对大量信息发布的网站,把网站地址改变成静态的绝对是值得的。
 
2、隐藏技术实现,提高网站的移植性
每个页面都挂着鲜明的.asp/.jsp这种开发语言的标记,可以一眼让人看出你的网站使用什么语言做的。而且在改变网站的语言的时候,你需要改动大量的链接。而且,一个页面修改了扩展名,他的pagerank也会随之消失,从头开始。我们可以用UrlRewrite技术隐藏我们的实现细节,这样修改移植都很方便,而且完全不损失pagerank。

3、满足美感的要求
对于追求完美主义的网站设计师,即使是网页的地址也要看起来简洁明快。形如
的网页地址,肯定是上不了完美主义者的法眼的,用UrlRewrite技术,你可以把他变成
在应用中怎样集成它呢?看看appfuse中的实现方式。
首先在web.xml中配置一个过滤器:

1<filter>
2    <filter-name>rewriteFilterfilter-name>
3    <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilterfilter-class>
4    <init-param>
5        <param-name>logLevelparam-name>
6        <param-value>commonsparam-value>
7    init-param>
8filter>

1<filter-mapping>
2    <filter-name>rewriteFilterfilter-name>
3    <url-pattern>/*
4
    
6

然后在WEB-INF目录下有一个配置文件urlrewrite.xml内容如下:

 1xml version="1.0" encoding="utf-8"?>
 2DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 3.0//EN"
 3    "">
 4
 5

 6<urlrewrite>
 7    <rule>
 8        <from>^/user/(.*).html$from>
 9        <to type="forward">/editUser.html\?username=$1to>
10    rule>
11
12    

13    <rule>
14        <from>^/webwork/css_xhtml/validation.js$from>
15        <to type="forward">/template/css_xhtml/validation.jsto>
16    rule>
阅读(814) | 评论(0) | 转发(0) |
0

上一篇:Servlet中的upload操作

下一篇:设置Tomcat内存

给主人留下些什么吧!~~