傲来云 发表于 前天 13:42

宝塔Nginx启动失败?一半是80端口被占用了!


大家在宝塔上有没有遇到过端口冲突、Nginx启动失败的问题?欢迎在评论区聊聊你的处理方式,互相取经!
最近在折腾一个新站点的时候,发现 Nginx 死活启动不了,在宝塔后台点“启动”一直报错,日志提示是端口冲突,干脆记录下来分享一下。

在宝塔面板里启动 Nginx 报错,查看日志后发现:
bind() to 0.0.0.0:80 failed (98: Address already in use)翻译过来就是:80端口已经被别的服务占用了,Nginx抢不到。

我们可以用宝塔的“终端”功能或者 SSH 登录,用命令查一下到底谁在占用 80:
lsof -i :80或者:netstat -tlnp | grep :80看到类似这样的输出:apache21234root6uTCP *:80 (LISTEN)说明 Apache 正在用 80 端口。这在宝塔上挺常见的,因为面板有时候默认装了 Apache 或 OpenLiteSpeed。

方法一:关闭或卸载 Apache(或其他占用服务)在宝塔面板左侧点【软件商店】,找到 Apache,点“卸载”即可。如果不想卸载,只是暂时用 Nginx,可以点“停止”服务。
方法二:把 Nginx 改用其他端口如果你临时需要 Apache 占着 80,可以让 Nginx 用其他端口,比如 8080。打开宝塔【网站】里的站点设置,修改监听端口为 8080 即可。
然后记得开放端口!
方法三:进阶用户可以直接杀掉占用进程(谨慎使用)如果你清楚要干掉哪个服务,可以执行:kill -9 进程ID不建议新手用这个方法,因为可能会误杀了系统服务。

总结:
宝塔用起来虽然很方便,但有时候后台多个服务抢端口就容易出问题。建议大家在面板装好环境后,先统一选择一个主服务(Nginx / Apache / OpenLiteSpeed 三选一),别装一堆。
页: [1]
查看完整版本: 宝塔Nginx启动失败?一半是80端口被占用了!