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

IIS 手動啟動提示「位址被佔用」故障排查與重裝修復指南

編輯:關於伺服器

故障現象

Windows Server 2003 + IIS 6.0 環境,手動啟動 WWW 服務時彈出:「位址被佔用,啟動失敗!」,導致 IIS 無法啟動。

可能原因分析

原因說明可能性
IIS 核心檔案損壞/遺失關鍵 DLL、Metabase.xml 損毀⭐⭐⭐ 高
埠 80 被其他程序佔用Skype、Apache、Nginx、TeamViewer 等佔用 80 埠⭐⭐ 中
記憶體硬體錯誤RAM 損壞導致系統服務異常⭐ 低
SSL 憑證綁定衝突多站點 443 埠無 SNI 支援下衝突⭐⭐ 中

快速排查步驟

1. 檢查埠 80 佔用情況

netstat -ano | findstr :80
# 找出 PID,再用 tasklist 確認進程名稱
tasklist | findstr "PID號"
  • 若為 System (PID 4) 佔用 → 可能為 IIS 自身殘留、HTTP.sys 驅動問題
  • 若為其他程序 → 關閉該程序或變更其埠號

2. 檢查 IIS 相關服務狀態

services.msc
# 確認以下服務狀態
World Wide Web Publishing Service (W3SVC)
IIS Admin Service
HTTP SSL Service (若用 HTTPS)

標準修復方案:重新安裝 IIS 組件

⚠ 操作前請備份 %windir%\system32\inetsrv\MetaBase.xml (IIS 設定檔)

步驟 1:移除 IIS

  1. 控制台 → 新增/移除程式 → 新增/移除 Windows 元件
  2. 取消勾選「Internet Information Services (IIS)」
  3. 確定 → 完成移除

步驟 2:重新安裝 IIS

  1. 同介面勾選「Internet Information Services (IIS)」
  2. 點擊「詳細資料」可選擇子元件 (WWW、FTP、NNTP、SMTP、FrontPage 延伸等)
  3. 下一步 → 系統複製檔案 → 完成

步驟 3:驗證與還原設定

  1. IIS 管理員 → 啟動所有網站
  2. 瀏覽器訪問 https://localhost/ 確認預設頁面
  3. 若有備份 MetaBase.xml,可用 cscript adsutil.vbs restore 或手動合併關鍵設定
  4. 重新配置應用程式集區、站點綁定、SSL 憑證等

進階替代方案 (若重裝無效)

  1. 修復 HTTP.sys:netsh http show servicestate 檢查 URL ACL、netsh http delete urlacl url=https://+:80/ 清理殘留預約
  2. 檢查 SSL 憑證綁定:netsh http show sslcert 確認 IP:Port 對應唯一
  3. 系統檔案修復:sfc /scannow 修復系統核心檔案
  4. 記憶體診斷:mdsched.exe Windows 記憶體診斷工具

預防建議

  • 避免在 IIS 伺服器安裝其他佔用 80/443 埠的軟體
  • 定期備份 MetaBase.xml (含應用程式集區、虛擬目錄、SSL 綁定)
  • 使用監控工具 (Zabbix、Prometheus) 監控 W3SVC 服務狀態
  • 生產環境變更前建立系統還原點或虛擬機快照

核心結論:90% 以上「位址被佔用」實為 IIS 組件損壞或 Metabase 損毀,重裝 IIS 為最快有效修復路徑。若重裝無效,再深入排查 HTTP.sys、埠佔用、硬體層面。

Copyright © Windows教程網 All Rights Reserved