我有一个Ubuntu 14.04服务器,其中nginx最初由root用户安装。我现在想要以非root用户身份运行nginx,这是我添加到sudo
www-data
组的新用户。目前,我尚未安装应用服务器。
当我尝试从这个新用户运行nginx时,我收到以下消息:
nginx:[alert]无法打开错误日志文件:open() “/var/log/nginx/error.log”失败(13:允许被拒绝)2016/08/09 22:07:52 [warn] 17609#0:“user”指令只有在有意义时才有意义 主进程以超级用户权限运行,被忽略 /etc/nginx/nginx.conf:1 2016/08/09 22:07:52 [emerg] 17609#0:open() “/var/log/nginx/access.log”失败(13:许可被拒绝)
我很困惑为什么这是一个问题 - 我将/var/log/nginx/
的所有者和群组更改为www-data
。 nginx主进程用户是root,我认为是正确的,并且子进程正在运行(或尝试运行)www-data
。 error.log
和access.log
的文件权限为766.我缺少什么?
答案 0 :(得分:0)
您可能已经开始
nginx -t
作为普通用户。然后,您会得到确切的误导性错误消息
如果您是root用户或使用sudo
来执行此操作,则错误应该消失