一、背景

这个错误在重启nginx或者启动nginx的时候,经常会出现。我之前也一直认为出现这个错误是因为有程序占用了nginx的进程。但是知其然不知其所以然。每次报错都有点懵逼,所以这边一步步排查错误,做个记录。

二、排错过程

1、按照提示

//按照提示,执行此命令,查看错误原因
systemctl status nginx.service

由报错信息可知,nginx绑定80端口失败。详细错误请输入 -l 继续查看

2、继续跟踪错误

//查看错误的详情
systemctl status nginx.service -l

这里输入 -l 之后,说实话,差距并不大。原因还是绑定端口失败。

3、nginx配置文件有错误

运行下面命令查看修改

nginx -t

4、已经启动nginx或者配置文件中的端口号被占用

4.1检查端口是否被占用,如果端口已经被占用,自己权衡一下是换个端口还是把占用端口的进程杀掉

netstat -tnlp

4.2检查nginx是否已经启动

ps -aux | grep nginx

如果已经启动使用下面命令干掉即可

pkill - nginx

三、解决方案

1、查看此时占用80端口的程序

netstat -ntlp | grep 80


这里可以看到,80端口是被占用的 。我们再详细看看占用80的是什么

ps -ef | grep 80

然后找到pid,杀掉这些程序

//-s 9 代表的是快速强制的杀掉pid程序
kill -s 9 pid

2、杀到没有程序可杀为止,然后启动nginx

此时启动成功。

转载自:https://blog.csdn.net/LJFPHP/article/details/79102840

nginx启动报错:Job for nginx.service failed. See 'systemctl status nginx.service' and 'journalctl -xn' fo的更多相关文章

  1. Nginx启动报错:10013: An attempt was made to access a socket in a way forbidden

    Nginx在win7,win2008下启动报错:bind() to 0.0.0.0:80 failed (10013: An attempt was made to access a socket i ...

  2. Win7下nginx默认80端口被System占用,造成nginx启动报错的解决方案

    Win7下nginx默认80端口被System占用,造成nginx启动报错的解决方案   在win7 32位旗舰版下,启动1.0.8版本nginx,显示如下错误:  [plain] 2012/04/0 ...

  3. nginx 启动报错“var/run/nginx/nginx.pid" no such file or directory

    nginx 启动报错“var/run/nginx/nginx.pid" no such file or directory 今天刚搭建的nginx服务器启动时,报错“var/run/ngin ...

  4. zabbix启动报错:Connection to database 'xxx' failed解决方法

    Zabbix 分布式系统监视系统 zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案. zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通 ...

  5. nginx默认80端口被System占用,造成nginx启动报错的解决方案

    今天启动window上的nginx总是报错 错误信息是bind() to 0.0.0.0:80 failed (10013: An attempt was made to access a socke ...

  6. nginx 启动报错 “/var/run/nginx/nginx.pid" failed” 解决方法

    问题: 重启虚拟机后,再次重启nginx会报错: open() "/var/run/nginx/nginx.pid" failed (2: No such file or dire ...

  7. Nginx 启动报错 “/var/run/nginx/nginx.pid" failed”

    问题: 重启虚拟机后,再次重启nginx会报错: open() "/var/run/nginx/nginx.pid" failed (2: No such file or dire ...

  8. tomcat 启动报错org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].xxx

    今天在写完一个非常简单的servlet页面跳转的web项目后,启动tomcat报错org.apache.catalina.LifecycleException: Failed to start com ...

  9. nginx 启动报错403

    nginx 安装完成以后启动的时候报403, 网上找的答案是在配置文件nginx.conf里面加上 user root owner;这个要加在配置文件的第一行才行,否则还是会报错,配置文件截图为: 参 ...

随机推荐

  1. Python中*args和**kwargs 的简单使用

    # 在函数定义中使用*args和kwargs传递可变长参数. *args用作传递非命名键值可变长参数列表(位置参数); kwargs用作传递键值可变长参数列表# *args表示任何多个无名参数,它是一 ...

  2. [转载] c#中decimal ,double,float的区别

    一直很奇怪C#的预定义数据类型中为什么加了一个decimal,有float和double不就够了吗?今天来挖一挖. 浮点型 Name CTS Type De script ion Significan ...

  3. Jmeter压力测试和接口测试

    jmeter是apache公司基于java开发的一款开源压力测试工具,体积小,功能全,使用方便,是一个比较轻量级的测试工具,使用起来非常简单.因为jmeter是java开发的,所以运行的时候必须先要安 ...

  4. LINUX部署SVN服务器

    1.安装SVN服务端 yum install -y subversion 2.创建svn版本库 mkdir -p /data/svn/myproject svnadmin create /data/s ...

  5. Linux centos7 下 svn 服务器搭建

    摘自:https://www.cnblogs.com/mymelon/p/5483215.html 鉴于在搭建时,参考网上很多资料,网上资料在有用的同时,也坑了很多人 本文的目的,也就是想让后继之人在 ...

  6. IDEA添加作者和时间信息

  7. GoldenGate实时投递数据到大数据平台(3)- Apache Flume

    Apache Flume Flume NG是一个分布式.可靠.可用的系统,它能够将不同数据源的海量日志数据进行高效收集.聚合,最后存储到一个中心化数据存储系统中,方便进行数据分析.事实上flume也可 ...

  8. SaaS公司融资的「22条军规 」(转)

    编者按:本文是SaaS教父Jason Lemkin的一篇分享.他在文章中分享了他不投资一家公司的22条理由,希望对打算融资和正在融资的你有所启发. 为何有的早期创业公司能成功融资,而有的公司融资却屡遭 ...

  9. android之发送Get或Post请求至服务器接口

    import java.io.BufferedReader; import java.io.ByteArrayOutputStream; import java.io.IOException; imp ...

  10. libcurl 设置代理,通过Fiddler可以进行抓包

    转载:https://blog.csdn.net/jaryguo/article/details/53021923 转载:https://www.cnblogs.com/miantest/p/7289 ...