今天把系統換成了windows 64位的系統,以前在32位下正常啟動並執行網站部署在64位下不能訪問了,始終報404.17或404.3的錯誤。
根據錯誤提示是沒有配置MIME映射。在微軟官網的協助手冊裡面的解決方案是(原文HTTP 錯誤 404.17):
在web.config檔案裡面加入應用程式處理的配置:
<system.webServer>
<handlers>
<!--配置MIME映射-->
<add name="urlre" path="*" verb="*" modules="IsapiModule" scriptProcessor="c:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll"
resourceType="Unspecified" requireAccess="None"
preCondition="classicMode,runtimeVersionv4.0,bitness64" />
</handlers>
</system.webServer>
根據不同的作業系統選擇對應的配置(我的.NET Framework 版本是4.0)。
ASP.NET 2.0 Classic Mode 32-bit Handler(windows32位作業系統的配置)
<add name="PageHandlerFactory-ISAPI-2.0" path="*.aspx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
ASP.NET 2.0 Classic Mode 64-bit Handler(windows64位作業系統的配置)
<add name="PageHandlerFactory-ISAPI-2.0-64" path="*.aspx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
就這樣加入這個映射配置,程式正常運行了。