Appearance
端口占用导致 Apache 起不来
元信息
- 目标:80/443 端口被占导致 Apache 起不来时,会用 Netstat+任务管理器找到并结束占用进程,或退而给 Apache 换监听端口
- 关键概念:端口占用、Netstat、PID、任务管理器、Listen 指令、默认端口
- 关联阶段:cp1
- 常见误区:见 "shutdown unexpectedly" 就重装(先查端口占用);换端口只改 httpd.conf 一处(SSL 的 443 在 httpd-ssl.conf,也要同步换);换完端口仍用原地址访问(须带
:88新端口号)
问:XAMPP 面板点 Start 后 Apache 起不来,日志报 80/443 已被占用,怎么办?
症状:面板日志出现 "Error: Apache shutdown unexpectedly" 或端口被占提示。
答:解决方法一——找到并结束占用进程
点击 xampp-controller 窗口右侧的 Netstat 按钮,查出 80 端口被哪个进程占用:列表每行是一个监听端口,Port 列是端口号、PID 列是进程号、Process 列是进程名——找到 Port 为 80(或 443)的行,看是哪个进程占了口。
确认占用者后 Ctrl+Alt+Delete 调出任务管理器,在进程(后台进程)列表中按名字或 PID 找到该进程,强行退出。占用解除后重启 Apache——服务恢复,80 端口重新由我们的 XAMPP 监听。
答:解决方法二——给 Apache 换端口(占用进程不能杀时)
修改 apache\conf\httpd.conf,把监听指令里的 80 换成 88;修改 apache\conf\extra\httpd-ssl.conf,把 443 替换为 449,避免 SSL 端口继续被占。
访问该网站的所有地址必须相应改为 http://127.0.0.1:88。两处端口都改完后,必须重启 Apache 才会生效。
注:演示完换端口方案,记得把两处配置改回默认的 80 与 443,恢复标准环境。