【发布时间】:2022-03-13 06:39:15
【问题描述】:
我尝试sudo service nginx restart 并显示此错误:
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
我认为是关于这个符号链接?
ln -s ../sites-available/default default
我试试
cd /etc/nginx && grep -R listen *
sites-available/default: listen 80;
sites-enabled/default: listen 80;
我该如何解决?
【问题讨论】:
-
该错误意味着您的服务器上已经有一个进程正在侦听 TCP 端口 80。您应该检查正在运行的进程并在不需要它时将其终止。然后启动nginx。
-
我试图杀死它,但是当我想重新启动它时,我必须再次杀死它。这是正常的吗?或者它可以修复?对不起,我是新人
-
使用 80 端口的进程是什么?是nginx还是别的?在您的服务器上,只有一个进程可以侦听端口,因此您必须禁用任何其他设置为声明端口 80 的进程。
-
i grep -R listen * 是站点可用/默认:和站点启用/默认:是使用
-
使用“ps -auxf”查看服务器上当前正在运行的进程。或者使用“netstat -tulpn”查看哪些进程正在使用哪些端口。这将让您找出服务器上占用端口 80 的内容。有关如何使用“netstat”的说明,请参阅此链接:cyberciti.biz/faq/check-network-connection-linux