首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> ASP.NET 基礎 >> 關於ASP.NET

ASP.NET 在 IIS 部署常見問題與修復指南:aspnet_regiis、密碼重設、網域控制器完整方案

     編輯:關於ASP.NET

ASP.NET 應用程式在 IIS 上無法運行,是開發者最常遇到的部署噩夢。本文彙整實務上 99% 有效的四大修復方案,涵蓋安裝順序錯誤、腳本對應遺失、ASPNET 帳號密碼同步、網域控制器特殊配置,附完整指令與操作步驟,快速恢復服務。

核心原則:安裝順序決定成敗

正確順序:先裝 IIS → 再裝 .NET Framework / Visual Studio

若順序顛倒、或 IIS 重裝、升級 .NET 版本,必須重新註冊 ASP.NET ISAPI 對應:

cd C:\WINDOWS\Microsoft.NET\Framework\v1.0.3705
aspnet_regiis.exe -i

此指令會:註冊 `.aspx`、`.asmx` 等副檔名對應至 `aspnet_isapi.dll`、安裝用戶端驗證腳本庫、設定預設應用程式池。

方案二:重設 ASPNET 帳號密碼並同步 Machine.config

  1. 在「本地用戶和群組」中重設 `ASPNET` 使用者密碼
  2. 編輯 `\Microsoft.NET\Framework\v1.0.3705\CONFIG\Machine.config`
  3. 修改 `` 區段:
<processModel 
    userName="Machine" 
    password="AutoGenerate" />

<processModel 
    userName="ASPNET" 
    password="YourNewPassword" />

方案三:重裝 IIS + 重新註冊 ASP.NET

若上述無效,嘗試:

  1. 控制台 → 新增/移除程式 → Windows 元件 → 移除 IIS
  2. 重新安裝 IIS
  3. 執行 `aspnet_regiis.exe -i` 重新註冊

方案四:網域控制器專屬配置(參考 KB 315158)

DC 上 `ASPNET` 本地帳號無法正常運作,需建立網域帳號:

  1. Active Directory 建立使用者 `ASPUSER`,加入 `Users` 群組
  2. 本地安全性原則 → 使用者權利指派 → 「作為批次工作登入」加入 `ASPUSER`(需重啟)
  3. 確保 `ASPUSER` 擁有網站目錄讀取/執行權限
  4. 修改 `Machine.config`:
<processModel 
    userName="DomainName\ASPUSER" 
    password="ASPUSER_Password" />

最後 `iisreset` 重啟服務。

常見錯誤代碼快速對照

錯誤可能原因對應方案
HTTP 404 .aspx腳本對應遺失方案一 `aspnet_regiis -i`
HTTP 500 伺服器錯誤ASPNET 密碼不同步方案二 重設密碼 + Machine.config
存取被拒絕目錄權限不足檢查 ASPNET/ASPUSER NTFS 權限
無法載入 aspnet_isapi.dll.NET Framework 損毀修復/重裝 .NET Framework

進階診斷技巧

  • 事件檢視器 → System / Application 記錄,尋找 `aspnet_wp.exe` 或 `w3wp.exe` 錯誤
  • 啟用 ASP.NET 追蹤:``
  • 使用 `aspnet_regiis -lv` 列出所有已註冊版本
  • IIS 6.0+ 檢查應用程式池身分識別、管道模式(Classic/Integrated)

現代化部署建議(.NET 4.0+ / IIS 7+)

  • 使用 **Web Platform Installer** 自動化安裝 IIS + .NET + 資料庫
  • 應用程式池身分識別改用 `ApplicationPoolIdentity`(虛擬帳號,無需管理密碼)
  • 採用 `` 取代舊版 ``
  • 容器化部署(Docker + ASP.NET Core)徹底規避 IIS 相容性問題

掌握這套「診斷 → 修復 → 驗證」標準流程,讓 IIS 部署問題不再是阻礙,而是可預測、可控制的常規操作。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved