Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> 電腦軟體教學 >> 伺服器技術 >> 關於伺服器

實戰解決 IIS「HTTP 500 內部伺服器錯誤」:MSDTC 服務修復全紀錄

編輯:關於伺服器

故障現場

  • 環境:Windows XP SP2 + IIS 5.1
  • 現象:瀏覽 https://127.0.0.1 出現 HTTP 500 內部伺服器錯誤
  • 事件檢視器:ID 10004,無法啟動 {3D14228D-FBE1-11D0-995D-00C04FD919C1}(IIS Out-Of-Process Pooled Applications)

根因分析

IWAM 帳號密碼不同步。IWAM_機器名稱 帳號密碼分別儲於 Active Directory、IIS Metabase、COM+ 應用程式三處,由作業系統負責同步。若同步失敗,三者密碼不一致,導致 IIS 無法以正確身分啟動 Out-of-process 應用程式,拋出 500 錯誤。

修復步驟(經實測有效)

  1. 驗證 MSDTC 服務狀態
    net start msdtc → 若報錯「服務無法啟動」,確認 MSDTC 損毀。
  2. 清除 MSDTC 相關登錄機碼
    刪除下列機碼(備份後操作):
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSDTC
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC
    HKEY_CLASSES_ROOT\CID
    
  3. 停止、移除、重新安裝 MSDTC
    net stop msdtc
    msdtc -uninstall
    msdtc -install
    
  4. 重新啟動電腦,確保服務乾淨啟動。
  5. 啟動 MSDTC
    net start msdtc → 應成功啟動。
  6. 重設 IWAM 帳號密碼
    「電腦管理」→「本機使用者和群組」→「使用者」→ 找到 IWAM_機器名稱 → 右鍵「設定密碼」,輸入新密碼(如 P@ssw0rd123)。
  7. 同步 IIS Metabase 中的 IWAM 密碼
    c:\inetpub\adminscripts\adsutil set w3svc/wamuserpass "P@ssw0rd123"
    
  8. 同步 COM+ 應用程式使用的 IWAM 密碼
    c:\inetpub\adminscripts\cscript synciwam.vbs -v
    
  9. 驗證修復
    瀏覽 https://127.0.0.1,應正常顯示 IIS 預設頁面。

關鍵知識補充

  • IWAM 帳號命名格式:IWAM_<機器NetBIOS名稱>(類似匿名帳號 IUSR_<機器名>)。
  • 三方密碼同步由 OS 自動處理,但偶發 Bug 導致失效,需人工介入。
  • 修復後建議備份 Metabase(IIS 備份/還原),以便未來快速恢復。

結語

HTTP 500 錯誤成因眾多,但 XP/IIS 5.1 環境下 MSDTC 損毀導致 IWAM 密碼不同步 是高機率主因。依循上述 10 步驟,多數案例可在 15 分鐘內徹底解決,避免重灌系統的無謂浪費。

Copyright © Windows教程網 All Rights Reserved