Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學

Win7 安裝 VS 與 XAMPP 導致 80 連接埠衝突?修改註冊表釋放 System 佔用

編輯:Win7 系統應用技巧

Visual Studio (IIS Express/本地 IIS) 與 XAMPP (Apache) 同裝 Win7 時,常發生 **80 連接埠被 `System` 進程 (PID 4) 佔用**,導致 Apache 無法啟動、VS 偵錯失敗。根因是 Windows 核心 HTTP 服務 (`HTTP.sys`) 預設啟動並綁定 80 連接埠。本文教你透過註冊表禁用該服務自動啟動,釋放 80 連接埠給 Apache/XAMPP,需要時再手動啟用供 VS 使用。

80 連接埠被 PID 4 System 佔用

解決方案:註冊表修改 HTTP 服務啟動類型

  1. 按 Win+R → 輸入 regedit → Enter 開啟登錄編輯器。
  2. 定位至:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP
  3. 在右側找到 Start (DWORD 值),雙擊修改數值資料:
    3 → 4(3 = 自動啟動,4 = 停用)。
  4. 確定退出註冊表編輯器,**重新啟動電腦** 生效。

開啟 regedit

定位 HTTP 服務 Start 值

將 Start 從 3 改為 4

驗證與切換

  • 重啟後,開啟 CMD 執行 netstat -ano | findstr :80,應不再顯示 PID 4 佔用 80 連接埠。
  • XAMPP 控制台啟動 Apache 應成功綁定 80 連接埠。
  • 需使用 VS/IIS 時:將 Start 改回 3 並重啟,或以管理員身分執行 net start http 臨時啟動服務(下次開機失效)。

替代方案(不改註冊表)

  • 修改 Apache 連接埠:編輯 httpd.conf,將 `Listen 80` 改為 `Listen 8080` 或其他未佔用連接埠,訪問時加連接埠 https://localhost:8080。最簡單、無副作用。
  • 修改 IIS Express/本地 IIS 連接埠:VS 專案屬性 → Web → 專案 URL 修改連接埠。
  • 使用 `netsh http add iplisten` 限制 HTTP.sys 綁定特定 IP,留 80 給 Apache(進階)。

注意事項

  • 禁用 HTTP 服務會影響依賴它的功能:Windows 遠端管理、某些 WCF 服務、列印排程器 (部分)、BranchCache 等。確認不需這些功能再操作。
  • 修改註冊表有風險,建議先匯出 `HTTP` 鍵值備份(右鍵 → 匯出)。
  • Win10/11 同樣適用,但建議優先用連接埠變更法,避免影響系統更新、應用商店等新式服務。

一鍵註冊表修改,徹底解決 VS 與 XAMPP 80 連接埠搶佔大戰,開發環境共存無憂!

Copyright © Windows教程網 All Rights Reserved