Python&运维系列:nginx: [error] invalid PID number ““ in “/usr/local/nginx/logs/nginx.pid“
nginx: [error] invalid PID number ““ in “/usr/local/nginx/logs/nginx.pid“
- 背景:
- 原因:
- 解决方法:
- 情况一:使用指定`nginx.conf`文件的方式,用`-c`命令重启`nginx`
- 情况二:`nginx.conf`中的`nginx.pid`被注释掉了
背景:
在编辑nginx.conf 之后运行时出现nginx已经在运行,然后输入./nginx -s reload时出现
nginx: [error] invalid PID number “” in “/usr/local/nginx/logs/nginx.pid”
进入对应目录可以看到nginx.pid里是空的,因此无法结束或无法重启nginx。
原因:
究其原因是因为每一个nginx进程都对应一个id,存放于nginx.pid中,而在进行重新编译时可能会因为一些bug导致nginx.pid中的id号被卡死,因此无法重启。想要解决这个问题可以杀掉所有nginx进程,再用-c命令指定配置文件进行启动。
解决方法:
情况一:使用指定nginx.conf文件的方式,用-c命令重启nginx
cd /usr/local/nginx/sbin/ #进入/usr/local/nginx/sbin/目录
killall -9 nginx # 杀掉所有nginx进程
./nginx -t #检查配置文件是否有错
./nginx -c /usr/local/nginx/conf/nginx.conf # 指定配置文件-c启动nginx
情况二:nginx.conf中的nginx.pid被注释掉了
进入usr/local/nginx/安装目录下的conf配置文件目录,编辑nginx.conf配置文件,取消pid保存进程一行的注释。
cd /usr/local/nginx/conf #进入nginx的conf配置文件夹目录
vi nginx..conf #编辑配置文件
cd /usr/local/nginx/sbin #进入nginx启动命令文件夹
./nginx -s reload #重新启动nginx
已上方法均可解决nginx进程号无效的问题!!!
--------------------------------------以下无正文------------------------------------------------------
注:仅供学习,记录问题和参考,共勉!
参考文档:
1、解决 nginx: [error] invalid PID number “” in “/usr/local/nginx/logs/nginx.pid”_cxs123678的博客-CSDN博客
2、
解决nginx: [error] invalid PID number ““ in “/usr/local/nginx/logs/nginx.pid“_wardenzsy的博客-CSDN博客
3、nginx: [error] open() “/usr/local/nginx/logs/nginx.pid“ failed (2: No such file or directory)_流楚丶格念的博客-CSDN博客
乞力马扎罗の黎明
nginx: [error] invalid PID number ““ in “/usr/local/nginx/logs/nginx.pid“