nginx: [error] invalid PID number ““ in “/usr/local/nginx/logs/nginx.pid“

当编辑nginx.conf后遇到nginx已运行且nginx.pid为空时,可能因编译bug导致无法重启。解决方法包括:1)使用killall -9 nginx杀死所有进程,然后用-c指定配置文件启动;2)取消nginx.conf中pid注释并使用./nginx-sreload重启。通过这些步骤,可以有效解决nginx进程号无效的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

背景:

在编辑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的博客-优快云博客

2、 

解决nginx: [error] invalid PID number ““ in “/usr/local/nginx/logs/nginx.pid“_wardenzsy的博客-优快云博客

3、nginx: [error] open() “/usr/local/nginx/logs/nginx.pid“ failed (2: No such file or directory)_流楚丶格念的博客-优快云博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值