写在前面:之前在Linux上部署了nginx,每次只需要./nginx -s reload 就OK了,但是今天把项目部署在window上的时候,就踩了坑,nginx reload就不行了。
问题分析:启动或者重启nginx需要处理掉原来的nginx进程,正常启动nginx时,会在logs目录下创建nginx.pid文件(默认情况下),实际取决于nginx.conf文件的pid属性。
出现该错误的原因是由于某些原因,例如手动删除,其他软件删除,又或者是双击nginx.exe启动的情况(部分window电脑双击nginx.exe无法在logs目录下自动生成nginx.pid文件,不知道是电脑机型原因还是系统原因还是nginx的bug),总之这种情况发生了,避免方法是尽量使用命令行start nginx启动nginx,这时肯定会自动创建.......
解决方案:
1.打开系统任务管理器,找到nginx.exe进程,kill掉它
2.打开系统任务管理器,找到nginx.exe进程,右键,转到详细信息,第二栏pid,在logs目录下创建nginx.pid,文件里只写进pid值,保存,再执行你原来的命令。
3.kill掉nginx进程,再次启动它通过命令行启动。
或者直接到任务管理器下直接结束掉这个进程。
网友评论