我正在尝试为运行Visual Studio 2013的开发计算机上的MVC网站中的.gif文件获取自定义图像处理程序。我基于Scott Hanselman的一篇文章,其中包含动态生成一个png。
我有一个继承自IHttpHandler并实现ProcessRequest方法的类(我不认为代码是相关的,所以我不包括它)。我已经在web.config中添加了一个条目,如下所示:
<system.webServer>
<handlers>
<add name="ImageHandler" verb="*" path="*.gif" type="StaticContentWorkbench.Infrastructure.CustomGIFHandler" />
不幸的是,这不起作用所以我做了一些研究,发现我可能需要改变IIS配置,以便.gif文件由ASP.NET处理。我尝试在最后一个条目之前的IISExpress application.config文件的system.webserver - handlers部分添加一个条目:
<add name="PageHandlerFactory-ISAPI-4.0_64bit_Add_Gifs" path="*.gif" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
<add name="StaticFile" path="*" verb="*" modules="StaticFileModule,DefaultDocumentModule,DirectoryListingModule" resourceType="Either" requireAccess="Read" />
然而,这也没有奏效,现在我几乎陷入困境。
如何正确配置IISExpress 8以使用ASP.NET处理.gif文件的请求?
答案 0 :(得分:0)
我有同样的问题, 对我有用的是这个
<system.webServer>
<handlers>
<add verb="GET,HEAD" name="DocHandler"
path="*.pdf"
type="Web.DocHandler" />
</handlers>
</system.webServer>
问题是你需要单独映射每个扩展,你不能在路径属性中放置多个扩展名。
在您的情况下,尝试指定您需要的动词而不是*
希望这有帮助