Я удалил файл /var/log/nginx/error.log , а затем создал новый, используя:
sudo nano error.log
Выполнение ls -la
показывает, что error.log и access.log имеют одинаковые разрешения.
Когда я пытаюсь запустить nginx, я получаю сообщение об ошибке:
предупреждение: не удалось открыть файл журнала ошибок: open () "/var/log/nginx/error.log" отказано в разрешении.
Обновить
При попытке запустить nginx я также вижу:
emerg: /var/run/nginx.pid не удалось 13: разрешение отклонено.
echo "" > /file/to/empty
? Они оба одинаковые?> /file/to/empty
Обычный способ повернуть логи с помощью NginX - переименовать файл, а затем
/etc/init.d/nginx reload
. Сервер запускает новый файл, и вы можете делать то, что вы хотите со старым.Вы также можете найти полезным отредактировать конфигурацию, чтобы не регистрировать так много ....
источник
Загляните в конфиг nginx, проверьте, на каком сервере запущен сервер - возможно, пользователь будет nginx
так :
chown nginx: /var/run/nginx.pid
chown -R nginx: /var/log/nginx
Должен сделать свое дело.
источник
Удалите файл error.log, и nginx создаст его сам.
источник
Сначала попробуйте удалить файл, если это не сработает, убедитесь, что у пользователя nobody есть необходимые разрешения:
http://derekneely.com/2009/06/nginx-failed-13-permission-denied- while-reading-upstream/
источник