相关推荐recommended
解决httpd占用80端口导致Nginx启动不成功报nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
作者:mmseoamin日期:2023-12-18

一、问题描述

        今天在建自己小网站时启动Nginx时,发现其报下列错误,意思是因为80端口被占用导致Nginx启动失败。

 解决httpd占用80端口导致Nginx启动不成功报nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use),第1张

二、分析问题

        既然是因为80端口被占用了,那我们就要首先排查错误缘由,使用下面该命令对80端口进行摸排,结果显示80端口被httpd这个程序一直占用着。

netstat -ntlp|grep 80

解决httpd占用80端口导致Nginx启动不成功报nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use),第2张

 

 三、解决办法

        在网上找过一些办法,结果都杀不死该进程。如kill -9 端口号 这些等都无用。

        经过查找资料得知,使用下面这个命令,然后再重启Nginx即可完成成功运行。

fuser -k 80/tcp
cd /usr/local/nginx/sbin
./nginx 

四、运行结果

        输入公网ip,完美运行成功!!!

解决httpd占用80端口导致Nginx启动不成功报nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use),第3张