重新启动 Nginx 时突然出现以下错误:
重新启动 nginx:[警报]:无法打开错误日志文件:open()“/var/log/nginx/error.log”失败(13:权限被拒绝) 2011/02/16 17:20:58 [警告] 23925#0:“用户”指令仅当主进程以超级用户权限运行时才有意义,在/etc/nginx/nginx.conf:1中被忽略 配置文件 /etc/nginx/nginx.conf 语法正确 2011/02/16 17:20:58 [emerg] 23925#0:open()“/var/run/nginx.pid”失败(13:权限被拒绝) 配置文件 /etc/nginx/nginx.conf 测试失败
网站的前端部分可以加载,但某些文件(尤其是 CSS)无法加载。它们存在于服务器上,但在 Chrome 中直接加载资源时,它们会显示“哎呀,找不到此页面”。
我为我的域文件设置了一个特殊的组和用户,使用 suexec 来运行我的 apache 文件。我认为 nginx 归 root 所有,但我认为这是问题所在,但我要更改哪些 nginx 文件所有权?
答案1
或者,您可以更改 nginx.log 文件权限,以便它们与您用于启动 nginx 的当前用户匹配:
chown your_user /var/log/nginx/error.log
我建议你将这个权限添加到整个 nginx 日志目录
chown -R your_user /var/log/nginx/
答案2
只需以 root 用户身份启动 nginx 或使用 sudo
$>sudo /etc/init.d/nginx start
$>sudo service nginx start
不确定你使用的是哪种操作系统。在 nginx.conf 中设置用户所有者 http://forum.nginx.org/read.php?11,2664
答案3
nginx 主进程具有 root 权限,但 Amplify-agent 会定期由非 root 用户执行命令“nginx -t”。这就是 error.log 中出现这些错误的原因
因此,您可以忽略这些错误。
通过比较“的输出进行检查,”须藤nginx -t”