Jsp 服务器resin的url重定向的摸索

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

最简单的是基于各种WEB服务器中的URL重写转向(Rewrite)模块的URL转换:

这样几乎可以不修改程序的实现将 news.jsp?id=234 这样的链接映射成 news/234.html,从外面看上去和静态链接一样。resin服务器上可以通过webinfo的web.xml来设置:URL REWRITE功能之强大足够写上一本书。

当我需要将将news.jsp?id=234的映射成news/234.html时,只需设置web-inf所在目录下面的web.xml:

并且增加以下语句

<filter filter-name='rewrite'

filter-class='com.caucho.filters.RewriteFilter'>

<init>

<rewrite pattern="/(\d+)\.html" target="/\news.jsp\?id=$1"/>

//<rewrite pattern="/value_(.+)\.html" target="/\news.jsp\?t=$1"/> 这句是作为另外的参数设置的

</init>

</filter>

<filter-mapping url-pattern='/*' filter-name='rewrite'/>

其他方法大家可以自己去摸索,rewrite的功能非常强大。

这样设置后就可以通过1234.htm这样的链接访问原来的动态页面了。

通过URL REWRITE还有一些好处:

隐藏后台实现:这在后台应用平台的迁移时非常有用:当从jsp迁移到asp平台时,对于前台用户来说,根本感受不到后台应用的变化;

简化数据校验:因为像(\d+)这样的参数,可以有效的控制数字的格式甚至位数;

比如我们需要将应用从news.jsp?id=234迁移成news.php?query=234时,前台的表现可以一直保持为 news/234.html。从实现应用和前台表现的分离:保持了URL的稳定性,而使用mod_rewrite甚至可以把请求转发到其他后台服务器上。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航