重提URL Rewrite(2):使用已有组件进行URL Rewrite(转老赵blog)

本文介绍ASP.NET级别与IIS层面的URL重写方法,重点对比UrlRewriter.NET及IIRF组件的应用。通过配置实现请求从'/User/jeffz'重定向到'/User/name=jeffz'。

可能已经没有人会使用上一篇文章中的方法进行URL Rewrite了,因为提供URL Rewrite的组件早已铺天盖地了。

ASP.NET级别的URL Rewrite组件的原理很简单,其实只是监听BeginRequest事件,并且根据配置来决定目标URL。在我之前接触过的项目中,发现使用URLRewriter作为URL Rewrite组件的频率非常高,我想可能是因为那是微软提供的东西吧。

如果要使用URLRewriter,首先自然就是在web.config中配置一个    [L]

最后,我们来看一下两种组件Rewrite的区别。显然,最大的区别就在于它们是不同层面上的重写,下面的两幅示意图就描述了在两种情况下它们是如何将原本应该得到“404 Resource Not Found”结果的“/User/jeffz”请求重写至“/User/name=jeffz”的。

首先是UrlRewriter.NET在ASP.NET层面上的URL Rewrite:

接着是IIRF在IIS层面上的URL Rewrite:

有了这两个组件,相信我们已经再也不需要其他东西来实现URL Rewrite了。

转载于:https://www.cnblogs.com/webdesign/archive/2011/01/21/tt36.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值