2012-03-07 91 views
0

我正在写一个.Net MVC网站,并使用IIS express。如何阻止IIS通过.net来提供图像(favicon.ico)。

如何通过.Net管道提供停止图像。我appricate我可以通过这样做忽略路线:routes.IgnoreRoute("favicon.ico")。但我不希望代码被击中。

我试着在web.config

<handlers> 
    <add name="StaticFile-ico" path="*.ico" verb="*" modules="StaticFileModule" resourceType="File" requireAccess="Read" /> 
</handlers> 

但这并没有影响这个添加到system.webServer部分。我究竟做错了什么?

+0

的重复:http://stackoverflow.com/questions/6279643/prevent-iis-from-serving-static- files-through-asp-net-pipeline – 2012-03-07 18:48:06

+0

我不认为它是'runAllManagedModulesForAllRequests'设置为'false'。我不确定.ico是否包含在一组被忽略的扩展中? – Dan 2012-03-08 17:06:22

回答

0

这个线程已经很老了,但是我在Azure网站上遇到了同样的问题。 I found a way告诉IIS忽略/favicon.ico请求,因为我的favicon.ico是使用元标记设置的。

你只需要添加一个路径,告诉IIS忽略该请求:

<rule name="block favicon" stopProcessing="true"> 
    <match url="favicon\.ico" /> 
    <action type="CustomResponse" statusCode="404" subStatusCode="1" 
    statusReason="The requested file favicon.ico was not found" 
     statusDescription="The requested file favicon.ico was not found" /> 
</rule>