iis6通配符应用程序映射

微软有篇文章:http://technet2.microsoft.com/windowsserver/zh-chs/library/138a8ea6-680e-4c69-88fa-c57e9d0ea8132052.mspx?mfr=true

 

  1. 在“应用程序扩展”中,可以设定对特定扩展名的请求的处理方式,比如.aspx,.ascx,.asmx,.ashx这几个都设定为由“c:\windows\microsoft.net\framework\v2.0.50727\aspnet_isapi.dll”来处理。我们可以添加一个新的扩展名,如.happy,也将它交给“c:\windows\microsoft.net\framework\v2.0.50727\aspnet_isapi.dll”来处理。
  2. 在“应用程序扩展”中,添加新的映射时,扩展名一栏不能直接填“.*”,而只能填写形如“.aspx”之类具体的扩展名,这就是“通配符应用程序映射”的用处了。插入一个“通配符应用程序映射”后,比如,插入“c:\windows\microsoft.net\framework\v2.0.50727\aspnet_isapi.dll”,则所有扩展名的请求都会由“c:\windows\microsoft.net\framework\v2.0.50727\aspnet_isapi.dll”来处理。
  3. 当我们在“应用程序扩展”中添加了对应于.abc扩展名的映射,或者干脆直接添加了“通配符应用程序映射”后,在地址栏中直接输入形如“http://localhost/WebApplication/test.abc”的请求时,还是会报错,因为“c:\windows\microsoft.net\framework\v2.0.50727\aspnet_isapi.dll”默认也没有提供对.abc这种请求的处理,所以,我们还需要在web.config文件中添加用来处理.abc请求的handler,比如:                                           

<httpHandlers>
          <add verb="*" path="*.abc" validate="false" type="WebApplication.MyHandler, WebApplication"/>
</httpHandlers>

 

当然,其中的WebApplication.MyHandler这个类是需要自己写的,实现IHttpHandler接口即可。

 

posted @ 2008-07-28 14:43  gby630  阅读(1313)  评论(0编辑  收藏  举报