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

一、问题描述

在我们平常使用nginx的时候,经常有可能会发现我们的pid找不到了,丢失了,这会导致一个错误,如下:

nginx: [error] open() "/var/run/nginx/nginx.pid" failed (2: No such file or directory) 

或者是:

nginx: [error] invalid PID number "" in "/var/run/nginx/nginx.pid"



二、问题出现分析

  1. nginx.pid文件不存在;
  2. nginx.pid所在的这个目录不存在。



三、解决方案

方案1:创建目录

针对问题:
在这里插入图片描述



尝试进入 /var/run/nginx 这个目录:
在这里插入图片描述

此处nginx.pid配置的目录,是在对nginx进行编译时设置的,所以具体要检测什么目录,要看你编译时候设置的是什么目录:
可以通过:nginx -V 指令进行查看
在这里插入图片描述



如果没有找到这个目录,就进行创建:

mkdir /var/run/nginx

此处具体在哪创建目录,也是和上面一样看你在编译时配置的是什么目录。



尝试进入新创建的目录,检查是否创建成功:

cd /var/run/nginx

进入nginx的安装目录:

cd /usr/local/nginx

获取nginx的安装目录:whereis nginx



方案2:重新指定一个配置文件

针对问题:
在这里插入图片描述



进入sbin:

cd /sbin

重新指定一个nginx.conf文件:

./nginx -c /usr/local/nginx/conf/nginx.conf

重新加载配置文件

./nginx -s reload



方案3:修改默认的pid

进入conf目录:

cd ../conf

修改nginx.conf文件,执行新的nginx.pid:
在这里插入图片描述

#pid        logs/nginx.pid;
posted @ 2021-12-05 12:18  赵雯_后端开发工程师  阅读(183)  评论(0编辑  收藏  举报
复制代码