今天公司系统业务端需要重启nginx时 报错nginx: [error] open() “/var/run/nginx.pid” failed (2: No such file or directory) 打开“/var/run/nginx.pid“失败 或没有如此文件或目录
这是执行杀死nginx进程后 导致的pid文件丢失 。所以当我们重载nginx时会提示找不到nginx.pid文件了。nginx 被停止时,var/run/nginx.pid 被删除了。 而 reopen 和 reload命令需要通过 nginx.pid 获取进程号,会去找 var/run/nginx.pid ,如果不存在,就报错了
启动nginx (启动前确保nginx还没启动 启动了的话 kill -9先杀掉nginx主进程号即可)
启动格式 nginx安装目录地址 –c nginx配文件路径
若不加:使用默认的nginx.conf(一般位于/usr/local/conf/nginx.conf,具体以实际情况为准)
[root@redis-zuul–eureka–mysql ~]# /usr/sbin/nginx –c /etc/nginx/nginx.conf //启动nginx (或者 nginx -c /etc/nginx/nginx.conf)
[root@redis-zuul–eureka–mysql ~]# ps –ef | grep nginx //查看nginx进程
再进入nginx安装目录执行nginx –s reload 就不会报错了。例如的我这里的安装目录是/usr/sbin/nginx
[root@redis-zuul–eureka–mysql ~]# cd /usr/sbin/nginx //进入nginx安装目录
[root@redis-zuul–eureka–mysql ~]# ./nginx -s reload //平滑启动nginx
———————————————————————————————————————————
题外话:要是平时nginx配置文件修改了的话 在重载前 最好检测下nginx.conf配置文件是否正确 可以执行以下命令
[root@redis-zuul-eureka–mysql ~]# /usr/sbin/nginx –t -c /etc/nginx/nginx.conf //测试nginx配置文件是否正确
测试命令格式:nginx安装目录地址 –t -c nginx配文件路径
原文地址:https://blog.csdn.net/weixin_52998454/article/details/130440670
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_33394.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!