你得到404錯誤,因爲在IIS配置映射到路徑*.png
沒有具體的管理處理器。因此,對Image/*.png
路徑的所有請求都被StaticFile
模塊(StaticFileModule, DefaultDocumentModule, DirectoryListingModule
)攔截,並且這些模塊無法找到請求的文件。
您可以通過在web.config
中配置您的應用程序來解決此問題。
第一個選項是將runAllManagedModulesForAllRequests="true"
屬性添加到configuration/system.webServer/modules
元素。應該這樣看:
<modules runAllManagedModulesForAllRequests="true" />
注:但我會強烈建議不這樣做。閱讀更多關於possible performance problems。
所以第二(和更好的)選項是註冊ASP.NET ISAPI處理您的請求Image/*.png
路徑:
<system.webServer>
<handlers>
<add name="ImageMVCHandler-ISAPI-4.0_32bit" path="image/*.png" verb="GET,HEAD" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
<add name="ImageMVCHandler-ISAPI-4.0_64bit" path="image/*.png" verb="GET,HEAD" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
<add name="ImageMVCHandler-Integrated-4.0" path="image/*.png" verb="GET,HEAD" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers>
</system.webServer>
什麼IIS版本? –
我認爲'/ image/find/2.png'可能會給你'Resource not found'例外 –
我使用的Azure網站導致我相信它是8.0或8.5。 @Murali我試圖解決的確切問題是由於ISAPI導致的404錯誤。 –