关于URL的地址重写,自己也实验了一把!

看了cnblogs上很多朋友的重写方式,最简单的无非就是用application_begienstart来实现,各位朋友在网上搜也会一大把,如果你觉的喜欢用 MS的urlrewriter,其实也不错,但个人认为,自己写的东西自己最了解,用起来也得心应手。
 
开始试验了:
第一步我现在web.config的<system.web></system.web>中加入 :

 <httpHandlers>
      <add verb="*" path="*.html" type="HtmlHttpHandler"/>
 </httpHandlers>

第二步编写URL重写规则,我一般用XML来记录重写规则内容,这样就可以遍历搜索规则匹配
<?xml version="1.0" encoding="utf-8" ?>
<route>
      <page rewrite="/default/list/5.html" url="/default.aspx?type=list&id=5"></page>
      <page rewrite="/show/5.html" url="/show.aspx?id=5"></page>
      .......
</route>

第三步开始编写重写类库
创建一个处理URL地址处理规则类文件,读取XML信息,匹配URL重写规则,替换成原始URL地址。
创建一个继承IHttpHandler的重写处理类文件,重写URL匹配所获取的真实的URL地址后,用context.Server.Execute(真实地址)来输出真实地址页面内容
 
建议在匹配URL重写的过程中,XML文件里重写规则信息最好是预先载入,否则每个访问用户不可能每次读取重复读取XML配置信息!
源代码本人会稍后送上! 

转载于:https://www.cnblogs.com/rjf1979/archive/2009/04/04/1429365.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值