關於IIS 503錯誤處理
前言 工作需求換了台新筆電後,將舊筆電的IIS設定匯進來,執行後出現503錯誤。事件檢視器訊息如下 The Module DLL C:\Windows\system32\inetsrv\aspnetcore.dll failed to load. The data is the error. 此訊息是由於IIS的Site部份為.Net Core。本以為只要安裝好 .Net Core Hosting Bundle 就OK了,但....還是一樣會發生錯誤。 原因 此錯誤是有歷史痕跡的! 舊筆電一開始裝的是.Net Core 1.1還是2.0....忘了,其AspNetCoreModule的位置是在C:\Windows\system32\inetsrv\aspnetcore.dll。但之後的.Net Core改成AspNetCoreModuleV2,原有的已不在使用,而在我將舊筆電的IIS設定匯進來後,AspNetCoreModule的設定也匯進來到applicationHost.config了。白話說就是IIS的組態有不存在.dll的設定。 解決方式 修改組態C:\Windows\System32\inetsrv\config\applicationHost.config,將AspNetCoreModule模組移除或註解起來。 其他錯誤 在修改完後,一樣出現503錯誤,事件檢視器訊息 The Module DLL C:\Program Files\IIS\Application Request Routing\requestRouter.dll failed to load. The data is the error. The Module DLL C:\Windows\system32\inetsrv\rewrite.dll failed to load. The data is the error. 因為有用到Url Rewrite,此錯誤使用Web Platform將相關模組安裝好,就OK了。 其它參考 https://stackoverflow.com/questions/40161982/aspnetcore-dll-failed-to-load