Nginx是否尝试登录到/var/logs而不是/var/log?
我注意到,当我使用Nginx是否尝试登录到/var/logs而不是/var/log?,nginx,Nginx,我注意到,当我使用nginx-t测试我的nginx配置时,它给了我一个警告: nginx:[警报]无法打开错误日志文件:open()“/var/logs/nginx/error.log”失败(2:没有此类文件或目录) 这很有意义,因为nginx的日志路径实际上设置为/var/log/nginx/而不是/var/logs/nginx 我扫描了整个nginx config目录,其中没有任何引用/var/logs的内容。我不知道这个日志位置可以写在哪里?在终端中运行这个命令(注意:大写V): 您在那里
nginx-t
测试我的nginx配置时,它给了我一个警告:
nginx:[警报]无法打开错误日志文件:open()“/var/logs/nginx/error.log”失败(2:没有此类文件或目录
)
这很有意义,因为nginx的日志路径实际上设置为/var/log/nginx/
而不是/var/logs/nginx
我扫描了整个nginx config目录,其中没有任何引用/var/logs的内容。我不知道这个日志位置可以写在哪里?在终端中运行这个命令(注意:大写V): 您在那里找到/var/logs了吗?您的nginx可能使用该默认文件位置进行编译 [编辑] 我猜您的一些服务器块没有“error\u log”指令。所以nginx会为他们尝试默认的方法。请注意,默认情况下,错误日志始终处于打开状态 若要解决此问题,可以将此行添加到main块(顶层),以便所有子块都可以继承该设置:
error_log /var/log/nginx/error.log;
您有一个错误的编译默认值。nginx在加载配置之前注意到的任何内容都会转到编译时定义的错误日志路径。如果不能,请使用sane path或symlink log重新编译nginx到日志。您可以创建这些丢失的文件:
cd /var/log/nginx/
sudo touch error.log
sudo touch access.log
sudo chmod 750 *.log
然后触发nginx服务:
sudo systemctl daemon-relod
sudo service nginx restart
注意:您还可以禁用nginx日志记录
没有
/var/logs
路径,可能您的nginx配置文件在日志路径中有错误。日志的真实路径是/var/log/nginx/*.log
。谢谢。您还可以以相同的方式添加访问日志:access\u log/var/log/nginx/access.log代码>
sudo systemctl daemon-relod
sudo service nginx restart