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文件,均可正常关闭。不懂为啥第一次就不行呢?
 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM