当前位置: 首页 > news >正文

Nginx — nginx.pid打开失败及失效的解决方案

1、场景一:nginx.pid文件或者目录不存在

1.1、报错详情

[root@master conf]# ../sbin/nginx -s reload nginx: [error] open() "/var/run/nginx/nginx.pid" failed (2: No such file or directory) #nginx.pid文件或目录不存在。

原因:

1、文件不存在

2、目录不存在

 

1.2、解决方法

方法一:重新创建文件或目录并重新reload nginx之后会出现报错。
[root@master conf]# touch /var/run/nginx/nginx.pid
[root@master conf]# ../sbin/nginx -s reload 
nginx: [error] invalid PID number "" in "/var/run/nginx/nginx.pid"      #出现报错,无效的PID

方法二:通过./nginx -c 重新定义配置文件,重新手动去指定。
../sbin/nginx -c /usr/local/nginx/conf/nginx.conf
../sbin/nginx -s reload

 1.1.2.1 情况一:如果出现端口被占用表示nginx的进程还在,如过需要重新reload nginx 则将主进程中的pid,加到nginx.pid文件中。

[root@master conf]# ../sbin/nginx -c /usr/local/nginx/conf/nginx.conf
nginx: [emerg] bind() to 0.0.0.0:8080 failed (98: Address already in use)         #端口被占用说明进程存在

#步骤一:查看主进程的pid
[root@master conf]# ps -ef | grep nginx                #查看主进程的pid                          
root       4885      1  0 04:25 ?        00:00:00 nginx: master process ../sbin/nginx


#步骤二:将主进程的pid添加到nginx.pid文件中
[root@master html]# vim  /var/run/nginx/nginx.pid

 #步骤三:重新reload nginx
 [root@master conf]# ../sbin/nginx -s reload

 

相关文章:

  • css基础之浮动相关学习
  • 实现一个简易版的前端监控 SDK
  • ​AI训练中的专有名词大白话版
  • Linux《进程概念(上)》
  • PGD对抗样本生成算法实现(pytorch版)
  • React编程模型:React Streams规范详解
  • 阿里:多模态大模型预训练数据治理
  • VBA第三十四期 VBA中怎么用OnKey事件
  • Java与代码审计-Java基础语法
  • 【Pandas DataFrame】
  • SpringBoot学习Day2
  • SAP学习笔记 - 用Deepseek 整理SAP 09 - SAP中 BAPI 的核心概念,以及常用 BAPI 一览
  • (二十三)Dart 中的 Mixins 使用教程
  • C之(16)scan-build与clang-tidy使用
  • Spring Boot 3.4.3 基于 Spring WebFlux 实现 SSE 功能
  • 小白电路设计-设计5-可调式单电源直流稳压电路设计
  • 力扣经典算法篇-4-删除有序数组中的重复项 II(中等)
  • Python-Django入手
  • git的clone报错unable to access 443
  • 批量将 PDF 文档中的图片提取到指定文件夹