一、问题描述
在我们平常使用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"
二、问题出现分析
- nginx.pid文件不存在;
- nginx.pid所在的这个目录不存在。
三、解决方案
方案1:创建目录
针对问题:
尝试进入 /var/run/nginx 这个目录:
此处nginx.pid配置的目录,是在对nginx进行编译时设置的,所以具体要检测什么目录,要看你编译时候设置的是什么目录:
可以通过:nginx -v 指令进行查看
如果没有找到这个目录,就进行创建:
1
|
mkdir /var/run/nginx
|
此处具体在哪创建目录,也是和上面一样看你在编译时配置的是什么目录。
尝试进入新创建的目录,检查是否创建成功:
1
|
cd /var/run/nginx
|
进入nginx的安装目录:
1
|
cd /usr/local/nginx
|
获取nginx的安装目录:whereis nginx
方案2:重新指定一个配置文件
针对问题:
进入sbin:
1
|
cd /sbin
|
重新指定一个nginx.conf文件:
1
|
./nginx -c /usr/local/nginx/conf/nginx.conf
|
重新加载配置文件
1
|
./nginx -s reload
|
方案3:修改默认的pid
进入conf目录:
1
|
cd ../conf
|
修改nginx.conf文件,执行新的nginx.pid:
1
|
#pid logs/nginx.pid;
|
到此这篇关于nginx.pid打开失败以及失效的解决方案的文章就介绍到这了,更多相关nginx.pid打开失败内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://blog.csdn.net/qq_43795348/article/details/121727543