Невозможно изменить владельца и группу Nginx error_log и access_log
Я хочу изменить владельца и группу nginx error_log и access_log прямо из nginx (а не вручную, используя chgrp и chown). При этом nginx работает от имени пользователя root, чтобы он мог прослушивать порты 80, 443 и т. д......
Сервер работает под управлением Ubuntu 20.04, nginx/1.18.0 (Ubuntu)
Кажется, что независимо от того, где находятся:
/var/www/error_log
/var/www/access_log
/var/www/sub.domain.com/error_log
/var/www/sub.domain.com/access_log
/var/www/sub2.domain.com/error_log
/var/www/sub2.domain.com/access_log
...
Все они принадлежат корень: корень
игнорируя настройки, описанные в пользователь директива.
Вывод лс -л
:
-rw-r--r-- 1 root root 0 14 сент. 09:07 access_log
-rw-r--r-- 1 root root 0 14 сент. 08:43 error_log
Небольшое (усеченное) содержимое /и т.д./группа
:
корень:х:0:
демон:х:1:
корзина: х: 2:
система: х: 3:
Адм: х: 4: системный журнал
tty: x: 5: системный журнал
диск: х: 6:
ЛП:х:7:
www-данные:x:33:
резервная копия:x:34:
оператор:х:37:
...
webservergroup:x:1001:tirtagt,www-data,другойпользовательздесь
...
Несмотря на то, что я указал пользователь директива по /etc/nginx/nginx.conf
:
пользователь www-data webservergroup;
рабочие_процессы авто;
pid /run/nginx.pid;
включить /etc/nginx/modules-enabled/*.conf;
Пример блока сервера:
сервер {
слушать 80;
корень /var/www/sub.example.com;
# Установите здесь доменное имя или имя сервера
имя_сервера sub.example.com;
# журнал ошибок
error_log /var/www/sub.example.com/error_log уведомление;
журнал_доступа /var/www/sub.example.com/журнал_доступа;
# Объявить приоритет, если путь или файлы не указаны.
индекс index.html index.htm index.php;
# Поймать все местоположение
место расположения / {
# Передаем его PHP-мосту FastCGI
включить fastcgi_params;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
# Запустите DynamicPHPRouter для чего угодно и пусть он делает свою работу.
fastcgi_param SCRIPT_FILENAME $document_root/srouter.php;
}
}
Ожидаемое поведение будет заключаться в том, что журнал ошибок
и access_log
создается как www-data как владелец, а webservergroup как группа, что-то вроде этого, когда мы запускаем лс -л
:
-rw-rw-r-- 1 www-data webservergroup 0 14 сент. 09:07 access_log
-rw-rw-r-- 1 www-data webservergroup 0 14 сент. 08:43 error_log