nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Unknown error)

wylc123 1年前 ⋅ 1605 阅读

该错大概率是80端口被占用导致的

使用命令

netstat -tlnp|grep 80

查看占用80端口的进程

kill -9 1

发现杀不死

换其他端口试一下

发现可以正常启动,最后换用81端口来做nginx代理。

找到更科学的解决方式了:

systemctl -all list-sockets

查看有哪些服务:

发现是httpd.socket,httpd.service占用80端口,并且设置了自启动。

接下来我们关闭这两个服务:

systemctl stop httpd.service

systemctl stop httpd.socket

这个时候可以再查看下系统开放端口信息:

netstat -tlnp|grep 80

将占用进程kill掉

kill -9 29500

由于前面看到这两个服务都被设置了开机自启动,所以还要将其设置为开机不自启动:

systemctl disable httpd.socket

systemctl disable httpd.service

这个时候再来查看下服务的详细状态信息:

这两个服务的自启动项已经被设置为禁用。

然后将nginx监测的端口改为80,重启一下nginx就好了。


相关文章推荐

全部评论: 0

    我有话说: