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

原文链接:http://t.zoukankan.com/ios9-p-15709870.html

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 @ 2023-01-06 12:41  枫树湾河桥  阅读(677)  评论(0编辑  收藏  举报
Live2D