/**PageBeginHtml Block Begin **/ /***自定义返回顶部小火箭***/ /*生成博客目录的JS 开始*/ /*生成博客目录的JS 结束*/

nginx: [error] CreateFile() “D:\nginx-1.20.1/logs/nginx.pid“ failed (2: The system cannot find the

nginx: [error] CreateFile() “D:\nginx-1.20.1/logs/nginx.pid“ failed (2: The system cannot find the

 

下载解压完nginx后,双击nginx.exe后访问http://127.0.0.1/,能够出现欢迎界面

但是在命令行关闭nginx服务时(nginx -s quit),报错nginx: [error] CreateFile() “D:\nginx-1.20.1/logs/nginx.pid” failed

根据报错信息来看,在nginx安装目录下的logs文件中找不到nginx.pid文件,去对应文件查看,发现确实没有该文件

 

 

解决办法:
在任务管理器强制关闭nginx进程,

 

 


然后再在命令行中重新用start nginx命令启动,

 

 


现在发现在nginx安装目录下的logs文件中出现了nginx.pid文件,

 

 

再用命令nginx -s quit正常关闭nginx进程,

 

 


此时无法访问http://127.0.0.1/,成功关闭nginx

原因分析:
nginx在启动或重启时要杀掉之前的nginx进程,就需要通过nginx.pid来找到原来的进程,而nginx.pid存储的就是原来的进程id。没有进程id系统就无法找到原来的nginx进程,自然就无法关闭了

之后测试无论是双击nginx.exe还是cmd命令启动nginx,都会自动在logs文件下配置nginx.pid文件,均可正常关闭。不懂为啥第一次就不行呢?
 

posted @ 2021-12-20 10:38  一品堂.技术学习笔记  阅读(2018)  评论(0编辑  收藏  举报