Журнал ошибок nginx был огромным, поэтому я удалил его и создал новый, теперь nginx не запускается

Журнал ошибок nginx был огромным, поэтому я удалил его и создал новый, теперь nginx не запускается

Я удалил/var/log/nginx/error.logфайл, а затем создал новый с помощью:

sudo nano error.log

Делая ls -laпоказывает, чтожурнал ошибокидоступ.журналимеют одинаковые разрешения.

При попытке запустить nginx возникает ошибка:

предупреждение: не удалось открыть файл журнала ошибок: open() "/var/log/nginx/error.log" не удалось, доступ запрещен.

Обновлять

При попытке запустить nginx я также вижу:

emerg: /var/run/nginx.pid failed 13: отказано в доступе.

решение1

Это не решит вашу проблему, но в будущем, если вы это сделаете,

cat /dev/null > /файл/который/вы/хотите/удалить

Вы скопируете содержимое файла без каких-либо данных и сохраните все разрешения.

Не специфично для nginx, но дополнительно убедитесь, что вы запускаете приложение как пользователь, от имени которого оно должно запускаться. Если вы когда-либо запускали его как root, все разрешения будут принадлежать root, поэтому другие пользователи не смогут его запустить.

решение2

Обычный способ ротации журналов с помощью NginX — переименовать файл, а затем /etc/init.d/nginx reload. Сервер запускает новый файл, а со старым вы можете делать все, что захотите.

Вам также может быть полезно изменить конфигурацию, чтобы не регистрировать слишком много данных....

решение3

Посмотрите конфигурацию nginx, проверьте, под каким именем запущен сервер - скорее всего, это будет nginx.

так :

chown nginx: /var/run/nginx.pid chown -R nginx: /var/log/nginx

Должно сработать.

решение4

Удалите файл error.log, и nginx создаст его сам.

Связанный контент