技巧/诀窍:在ASP.NET中重写URL(4)

作者:Scott Guthrie 来源:Scott Guthrie博客中文版 时间:2007-09-23 12:21:00 

方法四:在IIS5和IIS6中使用 ISAPIRewrite 来实现无扩展名的URL重写

如果你不想等到IIS7出来才利用无扩展名的URL重写,那么你最好的措施是使用ISAPI过滤器来重写URL。我知道有2个ISAPI过滤器方案,你也许要去看一下:

我没亲手用过上面的产品,虽然我听过到对这2个产品的好评。Scott HanselmanJeff 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] 



一定要去读一下ScottJeff的贴子以了解这些ISAPI 模块的详情,以及你都能用它们做些什么。

注:使用ISAPI过滤器的一个坏处是,共享主机环境一般不允许你安装这样的组件,所以你要用它们的话,你要么需要一个专用的虚拟主机服务器,要么需要一个专用的主机服务器。但,如果你有一个主机计划允许你安装ISAPI的话,这会在IIS5/6下会提供最大的灵活性,让你过渡到IIS7推出为止。

标签:url,重写,asp.net
0
投稿

猜你喜欢

  • 网页栅格系统研究(4):技术实现

    2008-11-06 11:44:00
  • 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
  • 如何判断用户在某一页面逗留了多长时间?

    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
  • 求某数以内的所有质数的js算法

    2008-01-06 15:49:00
  • 用 iframe 解决下拉框与层之冲突

    2008-04-28 12:24:00
  • 如何调用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
  • asp之家 网络编程 m.aspxhome.com