我已经定义了一个HTTP Handler并在我的web.config中添加了一个条目
<add verb="GET" path="TestApp/*" type="TestApp.TestHandler, TestWebApp" />这是我所期望的,除非我遇到静态资源,如JPG,PNG文件
我还需要我的处理程序来处理像TestApp/logo.gif这样的路径,但是似乎IIS已经注册了StaticHandler来拦截这些请求
有没有办法让我的IIS有机会只处理路径TestApp/*的静态资源请求,而让ASP.NET StaticHandler处理其他所有事情?
是的,我意识到让IIS使用自己的处理程序来处理静态资源会更快、更高效
发布于 2013-05-10 21:47:17
如果您在集成管道模式下运行,您的处理程序将拦截这些请求:
<system.webServer>
<handlers>
<add name="TestHandler" path="TestApp/*" verb="GET" type="TestApp.TestHandler, TestWebApp" />
</handlers>
</system.webServer>如果在Classic Pipeline模式下运行,则必须在IIS中注册ISAPI筛选器,以便使这些请求通过托管处理程序。
发布于 2013-05-10 21:47:12
您应该将以下内容添加到您的web.config:
<modules runAllManagedModulesForAllRequests="true" />这将确保即使是对静态文件的请求也会通过.net管道传递。
https://stackoverflow.com/questions/16483702
复制相似问题