В зависимости от вашей конфигурации главный процесс nginx и рабочие процессы могут запускаться от имени разных пользователей.
Чтобы просмотреть пользователей и группы для процессов nginx:
ps -eo "%U %G %a" | grep nginx
root root nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf
www-data www-data nginx: worker process
Пользователю рабочего процесса требуется записьразрешение на файл журнала.
Чтобы просмотреть права доступа к файлу access.log:
ls -l /var/log/nginx/access.log
-rw-r----- 1 www-data www-data 0 Apr 29 2012 /var/log/nginx/access.log
В этом случае журнал доступа принадлежит рабочему процессу nginx и имеет доступ на запись.
См. Такжеnginx http_log_module документы.
В качестве вторичной проблемы, журналы nginx могут вращаться, как только они достигают определенного размера с помощью cronjob logrotate.Когда создается новый файл журнала, он должен быть создан с владельцем, группой и разрешениями, чтобы рабочий процесс nginx мог писать в него.
Эти параметры ротации журнала для nginx определены в /etc/logrotate.d/ nginx
См. также руководство по ротации журналов для Ubuntu .