You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows启动Apache报错80端口被PID4占用无法启动如何解决

Windows环境Apache启动报80端口被PID4占用解决方法

故障报错

启动Apache服务时返回如下错误,服务无法启动:

2:30:55 PM  [Apache]    Problem detected!
2:30:55 PM  [Apache]    Port 80 in use by "Unable to open process" with PID 4!
2:30:55 PM  [Apache]    Apache WILL NOT start without the configured ports free!
2:30:55 PM  [Apache]    You need to uninstall/disable/reconfigure the blocking application
2:30:55 PM  [Apache]    or reconfigure Apache and the Control Panel to listen on a different port

注意:PID 4是Windows系统内核进程的固定分配ID,代表端口是被系统托管的HTTP.sys相关服务占用,不是普通第三方程序,无法直接通过任务管理器结束进程释放,强制结束该进程会导致系统蓝屏、功能异常。

解决方法

两类方案按需选就行,不用都做。

方案1:释放80端口供Apache使用

适合必须用80端口对外提供Web服务的场景:

  • 以管理员身份打开CMD或PowerShell,执行命令netsh http show servicestate view=requestq,查看具体挂载在HTTP.sys上占用80端口的服务,常见的占用源包括:
    • 系统自带IIS服务(对应服务名W3SVC/World Wide Web Publishing Service)
    • SQL Server报表服务(SSRS)
    • Windows远程管理服务(WinRM)
    • Web部署代理服务、Windows更新传递优化服务
  • 按Win+R输入services.msc回车打开服务管理器,找到上一步查到的占用服务:
    • 如果不需要该服务,直接将其启动类型改为「禁用」,点击「停止」即可
    • 如果需要保留该服务,修改该服务自身的监听配置,让其不再占用80端口
  • 如果查出来是IIS占用但不需要IIS,也可以直接在管理员终端执行两条命令快速禁用:
    sc stop W3SVC
    sc config W3SVC start= disabled
    
  • 操作完成后执行netstat -ano | findstr ":80",如果返回为空就代表80端口已经释放,此时正常启动Apache即可。

方案2:修改Apache监听端口避开占用

适合不需要强制使用80端口、不想修改系统服务配置的场景,操作最简单:

  • 先选一个没被占用的端口(比如8080、8090都可以),执行netstat -ano | findstr ":你选的端口号"确认返回为空,避免改完又撞端口
  • 打开Apache安装目录下的conf/httpd.conf配置文件
  • 找到Listen 80配置项,将80修改为你选好的未占用端口,例如修改为Listen 8080
  • 同文件内找到ServerName localhost:80配置项,将后面的端口号同步修改为和上一步一致的值,例如ServerName localhost:8080
  • 如果启用了HTTPS服务,还要打开conf/extra/httpd-ssl.conf文件,将其中的Listen 443配置项也修改为未被占用的端口(比如4433),避免443端口同样被系统占用
  • 如果使用的是XAMPP、WAMP这类集成环境,修改完Apache配置后,还要同步修改面板内的Apache服务端口配置,避免面板误判端口占用
  • 保存所有配置后重启Apache即可,后续访问本地Web服务需要带上配置的新端口,例如http://localhost:8080

内容的提问来源于stack exchange,提问作者user19126561

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.31 00:03:19