当前位置:首页 » 《随便一记》 » 正文

Nginx 启动失败 提示 unknown error

16 人参与  2024年02月07日 08:01  分类 : 《随便一记》  评论

点击全文阅读


报错信息如下

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

1. 网上搜索, 基本上都是说80端口被占用, 要kill掉那些进程, 但是用 netstat 显示的是几个内网的ip地址(阿里云的 100.100.30.xx)也没有显示进程号

2. 看防火墙, 也没有启动

# firewall-cmd --statenot running

3. 又看了看占用80端口的进程, 只看到了aliyundun的进程, 以为是这个进程占用了80端口, 于是就准备, 先把Nginx设置为开启启动, 再重启一遍

 systemctl enable nginx

4. 心血来潮, 好久没搞linux了, 看看这个新的控制命令 `systemctl` 都开机启动了哪些程序

systemctl list-unit-files --type=service | grep enabled

5. 一看, 发现了问题, 里边有一个`httpd`的进程, 我去, 既生瑜何生亮啊, 原来是这个原因, 立马查看是不是有apache在跑, 果然

# ps -ef | grep httpdroot         799       1  0 12:15 ?        00:00:00 /usr/sbin/httpd -DFOREGROUNDapache       832     799  0 12:15 ?        00:00:00 /usr/sbin/httpd -DFOREGROUNDapache       833     799  0 12:15 ?        00:00:01 /usr/sbin/httpd -DFOREGROUNDapache       840     799  0 12:15 ?        00:00:00 /usr/sbin/httpd -DFOREGROUNDapache       841     799  0 12:15 ?        00:00:00 /usr/sbin/httpd -DFOREGROUNDapache      1596     799  0 13:06 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND

用下边命令也可以查到 :

lsof -i :80 

6. 果断关闭apache服务, 并关闭随机启动

# 关闭开启启动, 提示服务还在运行:# systemctl stop httpdWarning: Stopping httpd.service, but it can still be activated by:  httpd.socket# 关闭服务:# systemctl stop httpd.socket# 查询是否关闭成功:# ps -ef | grep httpdroot        1793    1700  0 13:55 pts/1    00:00:00 grep --color=auto httpd

7. 也不重启了, 直接运行Nginx, 成功:

# systemctl start nginx# ps -ef | grep nginxroot        1801       1  0 13:55 ?        00:00:00 nginx: master process /usr/sbin/nginxwww         1802    1801  0 13:55 ?        00:00:00 nginx: worker process


点击全文阅读


本文链接:http://zhangshiyu.com/post/67654.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1