我删除了/var/log/nginx/error.log文件,然后创build一个新的使用:
sudo nano error.log
Doinga ls -la显示error.log和access.log具有相同的权限。
当我尝试启动nginx时,出现错误:
警报:无法打开错误日志文件:打开()“/var/log/nginx/error.log”失败的权限被删除。
更新当试图启动nginx时,我也看到:
emerg:/var/run/nginx.pid失败13:权限被拒绝。
这不能解决你的问题,但是在将来,如果你这样做
cat / dev / null> / file /你/想要/到/擦除
你将不需要任何东西来复制文件的内容,并保持所有的权限。
不是nginx-speicific,但是另外,确保你正在运行应用程序,就像它应该运行的用户一样。 如果你以root的身份运行它,所有的权限将被root所有,所以其他用户将无法运行它。
看看nginx的configuration,检查服务器运行的是谁 – 猜测用户将是nginx
所以:
chown nginx: /var/run/nginx.pid
chown -R nginx: /var/log/nginx
应该做的伎俩。
删除error.log文件,nginx将自己创build它。
用NginX轮换日志的常用方法是重命名文件,然后/etc/init.d/nginx reload
。 服务器启动一个新的文件,你可以做你想要的与旧的。
您也可能发现编辑configuration不会logging太多有用。
首先尝试删除文件,如果不起作用,请检查nobody用户是否拥有正确的权限:
http://derekneely.com/2009/06/nginx-failed-13-permission-denied-while-reading-upstream/