Я использую другого пользователя для своих веб-служб. Винтовая конвенция.
У меня нет www-data
установить в любых конфигурационных файлах php:
$ grep -rnw /etc -e 'www-data'
$
Но я все еще получаю эту ошибку:
$ journalctl -u php7.0-fpm
php7.0-fpm-checkconf[19642]: chown: invalid user: ‘www-data:www-data’
systemd[1]: php7.0-fpm.service: Control process exited, code=exited status=1
systemd[1]: Failed to start The PHP 7.0 FastCGI Process Manager.
systemd[1]: php7.0-fpm.service: Unit entered failed state.
systemd[1]: php7.0-fpm.service: Failed with result 'exit-code'.
Я исправил это, сначала заменив www-data
в /usr/lib/tmpfiles.d/php7.0-fpm.conf
, который выглядел так:
#Type Path Mode UID GID Age Argument
d /run/php 0755 www-data www-data - -
Затем я получил еще одну ошибку:
systemd[1]: Starting The PHP 7.0 FastCGI Process Manager...
php-fpm7.0[]: [] ERROR: failed to open error_log (/var/log/php7.0-fpm.log): Permission denied (13)
php-fpm7.0[]: [] ERROR: failed to post process the configuration
php-fpm7.0[]: [] ERROR: FPM initialization failed
systemd[1]: php7.0-fpm.service: Main process exited, code=exited, status=78/n/a
systemd[1]: Failed to start The PHP 7.0 FastCGI Process Manager.
systemd[1]: php7.0-fpm.service: Unit entered failed state.
systemd[1]: php7.0-fpm.service: Failed with result 'exit-code'.
Что я исправил, изменив группу и разрешения файла журнала для моего пользователя веб-сервера:
$ sudo chgrp mywebserveruser /var/log/php7.0-fpm.log
$ sudo chmod g+rw /var/log/php7.0-fpm.log
И, наконец, перезапуск fpm:
$ sudo systemctl reload-or-restart