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

IIS 「Service Unavailable」錯誤原因分析與解決方案全覽

編輯:Server 2008

現象分類

一、暫時性資源耗盡 (刷新幾次即恢復)

  • 應用程式集區佇列長度超限、CPU/記憶體瞬間飆高、死循環程式碼。
  • 事件檢視器記錄:「應用程式集區 'xxx' 因一系列錯誤被自動停用」或「超過作業限制」。
  • IIS 6.0 (Server 2003) 以獨立工作進程隔離站點,單站故障不波及他站。
  • 連線數超過 IIS 限制 (預設無限制,但若人為設定上限) 也會觸發。

二、Access 資料庫引擎損壞 (未限制連線仍全站掛掉)

  • 典型於使用 Access (MDB) 資料庫的網站。
  • 引擎災難性故障、物件參考未設定錯誤。
  • 需使用「伺服器醫生」等工具修復 MDB 檔案,修復後服務自動恢復。

三、SharePoint 虛擬伺服器應用程式集區配置錯誤

  • 應用程式集區未正確指定 (預設 MSSharePointPortalAppPool)。
  • 集區身分帳號密碼過期 (需在 IIS 中同步更新)。
  • 集區帳號非 IIS_WPG 與 STS_WPG 群組成員。
  • 解決:驗證上述三點 → iisreset 重循環集區。

虛擬主機環境下的資源隔離機制

主機商通常將 30-50 個站點共用一個應用程式集區 (資源池),限制 CPU 60%、記憶體 200 MB。單一站點佔用過高導致集區停止,所有共用站點同時出現 Service Unavailable。監控腳本每 10 分鐘自動偵測並重啟停止的集區,平均 2-5 分鐘恢復;無監控環境可能需 2-6 小時人工介入。

排查建議

  1. 頻繁出現 → 聯繫主機商技術支援排查同集區異常站點。
  2. 非伺服器癱瘓 (FTP、遠端桌面正常) → 為資源耗盡而非硬體故障。
  3. 優化程式碼、避免死循環、定期壓縮 Access 資料庫、考慮遷移至 SQL Server。
Copyright © Windows教程網 All Rights Reserved