免费的ISAPI UrlRewrite组件IonicIsapiRewriter

来源:互联网 发布:2015流行语言网络语言 编辑:程序博客网 时间:2024/06/03 18:47

     最近研究了下ISAPI组件的开发,发觉ISAPI真是个好东西,特别是对性能要求比较高的场合,

     前几天因为工作需求,要做一个实现UrlRewrite的东西,偶的站点程序开发是用ASP.NET的,虽然在ASP.NET里面实现URLRewrite也比较简单方便,但是性能不够好,所以决定才用ISAPI来实现。

     虽然现在已经有一些这样的组件,如   IISRewrite,ISAPI_Rewrite,Mod_Rewrite 2等,但是因为他们都是收费的,而且我以前也对ISAPI开发有一点的了解,还曾经做过一个实现防止图片引用的东西,性能非常不错(相比ASP.NET的实现提高了N倍),所以决定自己开发,因为在开发过程中遇到一些问题,在找资料的时候,找到了这款免费的组件,而且带源代码,简直是太好了,

     下面就来看看这款免费的URLRewrite组件吧,它工作起来是基于正则表达式的配置文件的,提供了强大的灵活性与高性能,如下面的配置规则

     RewriteRule  ^/news/.asp/?newsid=(/d{1,9})$      /news/$1.html

     就可以将原来/news.asp?newsid=123 这样的地址转换成 /news/123.html  ,通过这样的转换,URL看起来是不是清爽多了,也更容易记忆,而且,还有另外一个好处就是,可以部分防止SQL注入的危险,因为在地址转换的时候采用了正则表达式的判断,非法的提交数据会直接导致404错误,如上面的,newsid=后面就只能是数字,如果是其他,则会提示没有页面,呵呵,

     IonicIsapiRewriter之所以免费,据作者自己的说法,一是因为这个东西确实很有用,作者自己也有这样的需求,二是因为现有的组件要么都不免费,或者只提供有功能显示的免费版,比如不支持正则表达式等,所以将他实现的这个开源出来。

     IonicIsapiRewriter是用C直接调用Windows API写成,使用了pcre的正则表达式库,作者准备在更新版本中加入自动检测配置文件改变等功能,不过,现有的版本已经足够我使用了,而且是带源码的,夫复何求呢,呵!

下载地址:http://cheeso.members.winisp.net/dl/IonicIsapiRewriter.zip

原创粉丝点击