私の Linux マシン (「php」) には、2 つのグループのメンバーであるユーザーがいます。一次グループは「php」、補助グループは「www」です。
Linux マシン (/home/www/public/wp-content/uploads) にディレクトリがあり、ユーザーはwww
で、グループはwww
で、権限は 775 に設定されています。
「php」ユーザーとして実行されているプロセスは、そのディレクトリ内のファイルを読み書きできるはずです。fopen
「php」ユーザーとしてそのディレクトリ内のファイルであるコマンドラインからスクリプトを実行すると、正常に動作します!
しかし、ユーザー "php" とグループ "php" で php-fpm を起動すると、そのディレクトリに書き込もうとすると "permission denied" エラーが発生します。
ディレクトリを所有する「www」グループの一部である「php」ユーザーとして実行されているため、php-fpmプロセスは引き続きそのディレクトリに書き込むことができるはずです。しかし、「許可が拒否されました」と表示されます。
php-fpm の動作が php スクリプトの動作と異なるのはなぜですか?
(セカンダリ グループを追加した後に php-fpm を再起動したので、古い問題ではありません。)