nginx 重启/停止/退出失败
启动Nginx时候报错:
nginx: [error] open() “/usr/local/nginx/logs/nginx.pid” failed (2: No such file or directory)
这句话的意思就是,你的nginx.pid 打开失败,今天我也是被这个问题困扰了半天,但是我就是要弄懂它。
事情的经过是这样的,我先下载nginx,然后上传都root目录下,进行对应的环境安装下载,万事俱备之后,我用./nginx命令(默认启动方式启动成功)。
然后我想停止的时候,无法停止,也无法退出,一直报上面那个错误。
我就去查询相关知识,并且自己重复测试,总是弄明白了,我也不知道算不算弄明白,不过还是记录一下。
应为我上传的配置文件是这样的(这是部分配置,在头部几行的位置),
#pid logs/nginx.pid;
我对应的这个配置被注释掉了,然后我就把注释打开了,然后更改路径为niginx的安装默认路径
/usr/local/nginx/logs/nginx.pid
到这里你就解决了大半
之后就有两种解决方法
第一种:
ps aux|grep nginx //查看nginx的进程
kill 进程号//普通的手段已经无法退出
之后再重新启动,就会发现问题已经解决,stop,relaod,quit命令都可以使用,
已经在你设置的目录下生成了对应的nginx.pid文件,它会去使用nginx.pid文件中保存的进程号。
第二种:
既然我们知道它是拿nginx.pid文件中的进程号来进行一系列的操作,那我们就直接用
ps aux|grep nginx //查看nginx的进程
然后把获取到的进程号放到nginx.pid文件中,就可以使用一系列的命令了。
其实还有第三种方法
绕过了nginx.pid文件
nginx路径 -c ningx配置文件
以配置文件的形式启动nginx
你学废了嘛?