Nginx не удается запустить для файловой системы, доступной только для чтения
я пытаюсь настроить nginx, но по умолчанию он создает некоторые каталоги в местах /var/lib/nginx , /etc/nginx
я хочу, чтобы nginx создавал эти каталоги в другом месте, например, в /tmp, а не в /var/lib, так как /tmp монтируется как другой том в настройках, которые у меня есть в настоящее время, где файловая система установлена на чтение, и когда файловая система установлена на чтение, nginx не работает с ошибкой unable to mkdir()
Как настроить nginx для этого?
Я могу добавить местоположения для access, error, body, fastcgi, scgi и uwsgi
Вот мой файл conf
, который был изменен на
Проверьте, под каким пользователем запущен Nginx. По умолчанию это можно найти в файле /etc/nginx/nginx.conf
, в частности, в директиве user
(http://nginx.org/en/docs/ngx_core_module.html#user). После этого убедитесь, что у пользователя есть права на чтение/запись нужных вам путей.
Упомянутая вами ошибка (Could not open error log file: open() '/var/log/nginx/error.log' failed (30: Read-only file system)
) может происходить потому, что, поскольку Nginx не может писать по указанным путям, он пытается записать ошибку в журнал по пути по умолчанию (/var/log/nginx/error.log
). Возможно, что после внесенных вами изменений этот путь больше не существует.