技巧/诀窍:在ASP.NET中重写URL(4)
作者:Scott Guthrie 来源:Scott Guthrie博客中文版 时间:2007-09-23 12:21:00
方法四:在IIS5和IIS6中使用 ISAPIRewrite 来实现无扩展名的URL重写
如果你不想等到IIS7出来才利用无扩展名的URL重写,那么你最好的措施是使用ISAPI过滤器来重写URL。我知道有2个ISAPI过滤器方案,你也许要去看一下:
Helicon Tech's ISAPI Rewrite: 他们提供一个99美元(可免费试用30天)的ISAPI URL重写产品完整版,以及一个免费的轻量级版本。
Ionic's ISAPI Rewrite: 这可以免费下载(源码和可执行文件都可以下载)
我没亲手用过上面的产品,虽然我听过到对这2个产品的好评。Scott Hanselman和 Jeff Atwood 最近都写了精彩的博客贴子讲述使用这些产品的体验,同时提供了一些如何在这些产品中配置匹配规则的例子。Helicon Tech的ISAPI Rewrite的规则使用跟 Apache的mod_rewrite同样的句法,譬如(取自Jeff的博客贴子):
[ISAPI_Rewrite]
# fix missing slash on folders
# note, this assumes we have no folders with periods!
RewriteCond Host: (.*)
RewriteRule ([^.?]+[^.?/]) http\://$1$2/ [RP]
# remove index pages from URLs
RewriteRule (.*)/default.htm$ $1/ [I,RP]
RewriteRule (.*)/default.aspx$ $1/ [I,RP]
RewriteRule (.*)/index.htm$ $1/ [I,RP]
RewriteRule (.*)/index.html$ $1/ [I,RP]
# force proper www. prefix on all requests
RewriteCond %HTTP_HOST ^test\.com [I]
RewriteRule ^/(.*) /file/UploadPic/20079/23/200792312284457.jpg [I,O]
一定要去读一下Scott和Jeff的贴子以了解这些ISAPI 模块的详情,以及你都能用它们做些什么。
注:使用ISAPI过滤器的一个坏处是,共享主机环境一般不允许你安装这样的组件,所以你要用它们的话,你要么需要一个专用的虚拟主机服务器,要么需要一个专用的主机服务器。但,如果你有一个主机计划允许你安装ISAPI的话,这会在IIS5/6下会提供最大的灵活性,让你过渡到IIS7推出为止。
标签:url,重写,asp.net
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
网页栅格系统研究(4):技术实现
2008-11-06 11:44:00
![](https://img.aspxhome.com/file/UploadPic/200811/6/blueprint_3cols-59s.png)
Oracle 随机数
2009-06-04 10:01:00
流行WEB开发语言比较之ASP篇
2007-12-23 17:23:00
JavaScript版无组件上传类
2007-10-06 23:16:00
ASP+SQL Server构建网页防火墙
2009-01-21 19:56:00
巧用Dreamweaver制作复杂图像
2010-09-02 12:34:00
![](https://img.aspxhome.com/file/UploadPic/20072/200723113139567s.jpg)
如何判断用户在某一页面逗留了多长时间?
2010-01-18 20:48:00
链接的提示及打开方式
2008-07-29 13:09:00
MySQL Create Database 创建数据库
2011-09-10 16:04:51
[译]2009年海外Web设计风潮(上)
2009-01-23 09:21:00
![](https://img.aspxhome.com/file/UploadPic/up/3-2009webui.gif)
求某数以内的所有质数的js算法
2008-01-06 15:49:00
用 iframe 解决下拉框与层之冲突
2008-04-28 12:24:00
![](https://img.aspxhome.com/file/UploadPic/20071/2007131102430882s.gif)
如何调用Oracle存储过程?
2009-11-15 20:13:00
定位后无法选择容器内容解决方案
2008-07-28 13:14:00
不同操作系统下的mysql数据库同步
2008-12-22 14:41:00
跨浏览器让javascript文件携带图片数据
2011-03-31 17:12:00
使用一条INSERT语句完成多表插入
2010-03-18 11:08:00
Mysql远程访问的开启
2009-12-17 12:27:00
学习完全掌握纯CSS布局网页
2008-05-28 17:14:00
ASP格式化日期的函数(输出13种样式)
2011-07-12 20:22:00