在 Win10 上部署 IIS 時,常遇到「ASP.NET 4.0 未註冊」或「.NET Framework 4.0 註冊失敗」的錯誤。根本原因在於 版本相容性衝突。
核心原因分析
- Win10 內建 .NET Framework 4.5+(含 4.6、4.7、4.8 等向相容版本)。
- VS2015 等開發工具安裝時會帶入 .NET 4.5+ 運行環境。
- .NET Framework 採用「就地升級」機制:高版本安裝後,低版本(4.0)無法單獨安裝或註冊。
- Win7 可並存 4.0 與 4.5,但 Win10 強制僅保留最高版本。
解決方案:調整安裝順序
- 重灌系統(最乾淨):先安裝 Win10 > 啟用 IIS(含 ASP.NET 4.5/4.6/4.7/4.8 功能)> 再安裝 VS2015 或其他開發工具。此時 IIS 會自動註冊最高版本的 .NET,相容 4.0 應用程式池。
- 不重灌系統:嘗試在「開啟或關閉 Windows 功能」中,先關閉 IIS > 重開機 > 重新開啟 IIS 並勾選「ASP.NET 4.7/4.8」相關核心功能,系統會自動註冊最高版本。
重要觀念釐清
.NET Framework 4.5+ 為 就地升級 設計,完整向下相容 4.0 應用程式。應用程式池設為「.NET CLR 版本 v4.0」即可運行 4.0 專案,無須也無法單獨安裝 4.0 運行時。若專案強制要求 4.0 註冊動作,請改用 aspnet_regiis.exe -i(需以管理員執行)註冊當前最高版本。
結論:升級 .NET Framework 至最新版(4.8 以上)即可解決絕大多數相容性問題,無需執著於安裝 4.0。