&引用;没有这样的文件或目录;nginx中的重新加载命令出错

&引用;没有这样的文件或目录;nginx中的重新加载命令出错,nginx,Nginx,发出命令时 # nginx -s reload 我得到以下错误: nginx:[错误]open()“/run/nginx.pid”失败(2:没有这样的文件或目录) 我不明白这条消息-原因是什么?nginx-s reload向当前运行的nginx进程共同发送reload信号。 首先,nginx尝试查找PID文件,该文件应该位于/run/nginx.PID(我想,这个路径显示在nginx.conf中)。 其次,nginx尝试从该文件读取当前运行的nginx进程的PID,并向该进程发送HUP信号(这

发出命令时

# nginx -s reload
我得到以下错误:

nginx:[错误]open()“/run/nginx.pid”失败(2:没有这样的文件或目录)


我不明白这条消息-原因是什么?

nginx-s reload向当前运行的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文件的路径。

我通过删除
/usr/local/var/run

中的
nginx.PID
来修复它。我已经编辑了您的问题,使其更易于访问:一个更简洁的标题,删除了所有的打字错误,并对代码进行了适当的标记(在倒勾中)和错误消息(引用
)。我还尝试添加了一个实际的问题,您最初的措辞只是说您不理解错误,但没有问题。我认为通过添加更多的上下文,这个问题仍然可以得到改进,可能会指出您的设置或类似设置是否有任何特殊之处。