2012-03-07 120 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>