在 Windows Server 上安裝 .NET Framework 後再安裝 IIS,或反之,會導致 ASP.NET 沒有向 IIS 中繼資料庫註冊,出現「.NET 進程帳戶必須具有對 IIS 中繼資料庫的讀取權限」錯誤。執行 aspnet_regiis -i 即可重新註冊並修復權限。

ASP.NET 進程帳戶必須具有對 IIS 中繼資料庫的讀取權限。
出現此問題多是因為先裝 .NET Framework 後裝 IIS 造成。
aspnet_regiis -iFinished installing ASP.NET 即完成。aspnet_regiis.exe 是 ASP.NET 註冊工具,-i 參數會:aspnet_isapi.dll) 註冊至 IISScriptMaps 對應ASPNET 帳戶 (或 IIS_IUSRS 群組) 對中繼資料庫的讀取權限machine.config 相關區段| 版本 | 指令 | 備註 |
|---|---|---|
| IIS 6.0 / .NET 2.0/3.5 | aspnet_regiis -i | 經典模式 |
| IIS 7.0+ / .NET 4.0+ | dism /online /enable-feature /featurename:IIS-ASPNET45 | 透過 DISM 啟用功能自動註冊 |
| IIS 7.0+ 手動註冊 | %windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i | 指定 .NET 4.x 版本路徑 |
# IIS 管理員 → 應用程式集區 → .NET 版本欄位顯示 v2.0 / v4.0
# 瀏覽 .aspx 頁面正常渲染
遇到 .NET/IIS 安裝順序導致的中繼資料庫權限錯誤,aspnet_regiis -i 一鍵修復,現代版本改用 DISM 啟用功能。