2016-01-29 58 views
0

“没有这样的文件或目录”错误上reload命令时发出命令在nginx的

# nginx -s reload 

我得到以下错误:

nginx: [error] open() "/run/nginx.pid" failed (2: No such file or directory)

我不理解消息–是什么它的原因是什么?

+0

我编辑了你的问题,使它更容易访问:一个更简洁的标题,删除所有的拼写错误,正确的降价代码(反引号)和错误消息(作为报价,使用'>')。我也尝试添加一个实际的问题,你原来的措辞只是说你不明白错误,但毫无疑问。我认为这个问题还可以通过添加更多的上下文来改善,也许可以指出是否有关于您的设置或其他方面的特殊情况。 –

回答

1

nginx -s reload co向当前运行的nginx进程发送reload信号。 首先,nginx试图找到PID文件,该文件应位于/run/nginx.pid(我猜这个路径显示在您的nginx.conf中)。其次,nginx尝试从该文件读取当前正在运行的nginx进程的PID,并向该进程发送HUP信号(这是重新加载配置的请求)。

在你的情况,nginx找不到/run/nginx.pid文件。这可能是由两个原因造成的:1.目前没有运行nginx进程,2. PID文件位于不同位置而不是路径,这在nginx.conf中显示。

您应该检查nginx进程的存在性,例如,您可以使用ps aux | grep nginx。如果没有任何nginx进程,那么这就是你的问题的答案。另外,您应该检查配置文件中PID文件的路径。