UrlRewrite 重写url详解及实例

网友投稿 271 2023-06-26


UrlRewrite 重写url详解及实例

UrlRewrite 重写url详解

UrlRewrite就是我们通常说的地址重写,用户得到的全部都是经过处理后的URL地址。

urlrewrite顾名思义,就是对URL进行重写,用户得到的全部都是经过处理后的URL地址,这样做我觉得好处有三:

一:提高安全性,可以有效的避免一些参数名、ID等完全暴露在用户面前,如果用户随便乱输的话,不符合规则的话直接会返回个404或错误页面,这比直接返回500或一大堆服务器错误信息要好的多

二:美化URL,去除了那些比如*.do之类的后缀名、长长的参数串等,可以自己组织精简更能反映访问模块内容的URL

三:更有利于搜索引擎的收入,通过对URL的一些优化,可以使搜索引擎更好的识别与收录网站的信息

使用步骤

1下载jar

官方地址:http://tuckey.org/urlrewrite/

下载urlrewritefilter-4.0.3.jar,加入到工程lib目录下。

2配置web.xml

UrRMyZgLOlRewriteFilter

org.tuckey.web.filters.urlrewrite.UrlRewriteFilter

RMyZgLO UrlRewriteFilter

/*

REQUEST

FORWARD

3 配置urlrewrite.xml

添加urlrewrite.xml 到工程的WEB-INF目录下。

"http://tuckey.org/res/dtds/urlrewrite3.1.dtd">

The rule means that requests to /test/status/ will be redirected to /rewrite-status

the url will be rewritten.

^/vweb/view/index\-([0-9]+)$

/vweb/view/index.shtml?_vwebid=$1&type=show

小结:

urlrewrite是个过虑器,它将会过虑用户的所有请求,符合规则的便对其进行重定向。rule结点中from的规则默认使用的是正则表达式来匹配的,

当用户访问服务器时的URL会与该配置相比较,如果符合规则就会按照下面to结点中的配置对其进行跳转,其默认是foRMyZgLOrward跳转。

简单分析一下上面的正则表达式“^/vweb/view/index-([0-9]+)”:“”匹配输入字符串的开始位置“”匹配输入字符串的结束位置

“\”转义字符,表示后面的“-”不具有特殊含义,只是一个简单的字符串。

“([0-9]+)”:

“[0-9]”:由0到9中任何数据组成的字符串

“+”匹配1或多个正好在它之前的那个字符。

http://

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:微信公众号 提示:Unauthorized API function 问题解决方法
下一篇:微信支付H5调用支付详解(java版)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~