用ISAPI_Rewrite让IIS也支持如Apache下.htaccess的URL重写

时间:2021-05-19

前些日子用Linux做服务器写了一些东西,发现Apache下的.htaccess真是个好东西!不仅能实现URL真重写,还能实现假重写。真重写可以有效降低代码量与服务器资源消耗量,伪重写可以有效减少服务器的静态文件体积,节约了空间,真是不错!其实htaccess的功能远不只如此。

言归正传,那么IIS下能不能也实现htaccess这样激动人心的功能呢?ASP.NET2.0这个东东不是服务器级的,不能胜任重写这个重任,那么只有交给ISAPI了,在网上搜索,还居然真有公司(组织)开发了这种东东!不可思议!

官方地址是:http:///

下载到其中有一个文件Rewrite.dll就是我们的ISAPI了,在IIS里面添加这个dll然后重起就OK!!!Fantastic!!!

httpd.ini就相当于.htaccess了!

现在的版本是2.9版,技术文档看这里:中文手册英文手册(英文写得比较好,建议看英文的)

具体怎么用就不多说了,手册

下面是我写的一个超简单例子:

1.httpd.ini

[ISAPI_Rewrite]
RewriteRule^(.*)/([a-z0-9\-]+\.html)$$1/default2.asp\?filename=$2


2.default2.asp

<%=Request.QueryString%>


3,然后你进入浏览器输入"http://localhost/abcd123456.html"你会看到显示了这个网页,后台却并没有生成这个页!

filename=abcd123456.html


这个技术就是WordPress所应用的URL伪重写技术,IIS中如果本身支持该技术,估计Z-Blog会集成该技术。

应用了该技术Z-BLOG哪里还需要重建?需要的时候只需要改动一下httpd.ini就可以了

总之,ISAPI_Rewrite和htaccess都是很值得学习与掌握的技术,尤其是htaccess,我们应该努力应用它,发觉他的潜力。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章