У меня есть пользователь на моей Linux-машине ("php"), который является членом двух групп. Основная группа — «php», а дополнительная группа — «www».
У меня есть каталог на моем Linux-компьютере (/home/www/public/wp-content/uploads), пользователь которого www
, группа www
и права доступа установлены на 775.
Я ожидаю, что процесс, запущенный как пользователь «php», должен иметь возможность читать и записывать файлы в этом каталоге. Если я запускаю скрипт из командной строки, который fopen
является файлом в этом каталоге как пользователь «php», он работает нормально!
Однако, если я запускаю php-fpm с пользователем «php» и группой «php», я получаю ошибку «отказано в доступе» при попытке записи в этот каталог.
Я ожидаю, что процесс php-fpm должен по-прежнему иметь возможность писать в этот каталог, поскольку он работает как пользователь «php», который является частью группы «www», которой принадлежит каталог. Но я получаю «отказано в доступе».
Почему поведение php-fpm отличается от поведения php-скрипта?
(Я перезапустил php-fpm после того, как добавил дополнительную группу, так что это не проблема устаревания.)