nginx:access.log和error.log文件为空

时间:2015-08-30 18:02:18

标签: nginx

我刚刚使用命令

在Ubuntu 14.04上安装了nginx
sudo apt-get install nginx

现在,当我打开浏览器并输入地址localhost时,我正确地显示了"欢迎使用nginx"页。另外,我检查了位于/etc/nginx/nginx.conf的配置文件,并找到了以下日志设置:

access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;

然而,当我检查这两个文件时,两者都是空的。我多次打开localhost页面,但日志文件仍为空。我的设置可能有什么问题?

3 个答案:

答案 0 :(得分:24)

将nginx重新安装到较新版本后,我遇到了同样的问题。似乎日志文件所有权已更改,新的nginx无法保存任何内容。

删除日志文件并重新加载nginx对我有用:

$ sudo rm -f /var/log/nginx/*
$ sudo nginx -s reload

答案 1 :(得分:1)

默认情况下,它们设置为stdout和stderr。

lrwxrwxrwx  1 root root   11 Apr 27  2016 access.log -> /dev/stdout
lrwxrwxrwx  1 root root   11 Apr 27  2016 error.log -> /dev/stderr

所以你可以删除符号链接,应该没问题。

rm -f /var/log/nginx/*

答案 2 :(得分:0)

对于所有像我一样来到这里来弄清日志文件为何为空的人,并没有意识到您可能实际上位于docker容器中,就像对另一个答案的评论之一所建议的那样,只需打开一个新的外壳并使用

尾部的日志

docker logs {your-container-id-here} -f