На моем сервере запущено 2 php-приложения, а файлы в этих приложениях принадлежат 2 пользователям (user1 и user2)
Владельцы файлов выглядят так: user1: www-data и user2: www-data. Я назначаю www-данные как группу, чтобы мое php-приложение могло легко записывать в файлы, когда разрешение установлено на 775.
Поэтому я установил все права доступа к файлам 755 и 775 (для файлов, которые должны быть записаны).
Пока все хорошо, единственная проблема в том, что когда мое php-приложение создало файл, оно устанавливает право собственности на www-data www-data, а это не то, что мне нужно. Я хочу, чтобы php установил права доступа к user1: www-data или user2: www-data, в зависимости от того, какое приложение это.
Я использую Nginx 1.6.3 и php 5.5.24 с php-fpm.
Вы можете установить флаг setgid в каталоге, в котором сохраняются файлы.
setgid приведет к тому, что файлы, сохраненные в этом каталоге, будут принадлежать той же группе, что и сам каталог
chmod g+s directoryname
Других решений пока нет …