php-fpm ユーザーとグループをサイト所有者に設定

php-fpm ユーザーとグループをサイト所有者に設定

私はPHPサイトを実行するためにApacheを使用してphp-fpmに接続するcentos 6サーバーを持っています。私は/home/user1のようなWebサイトのルートディレクトリとしてユーザーのホームディレクトリを使用します。一方、php-fpm www.conf、ユーザー、およびグループ行はapacheに設定されました。

したがって、PHPがファイル(/home/user1/var/log/fileなど)を書き込んだり作成したりするときは、apache:apacheを所有者として使用します。その後、/home/user1/var/log/"chmod -R ug+s"でコマンドを実行する必要があります。 PHPはapache:user1でファイルを生成し、user1がグループになるようにします。

私の質問は、apache:apacheの代わりにディレクトリユーザー所有者(user1:user1)を使用してファイルを生成するようにphp-fpmを設定できることです。

答え1

ApacheでsuPHPモジュールを使用して、PHPスクリプトを実行するためのユーザー権限を指定できます。この記事を読むことができます http://blog.secaserver.com/2012/02/linux-install-configure-apache-suphp/

答え2

www.conf の代わりに pool.d ディレクトリに site.conf ファイルを作成します。

その後、サイトごとにユーザーを設定できます。

user  = myuser
group = $user

あなたもできます。

site  = $pool
group = $pool 

ユーザー名がsite.example.com(devopsに便利)の場合。

しかし、必要な場合があることを考慮してください。

site  = $pool
group = httpd

または

group = www-data

(Debianの場合)最小限の権限を使用している場合は、画像のアップロードなど、プールで生成されたファイルをApacheから読み取るようにしたい場合。

Apacheがphp_fpmと通信できるように、ソケットの場所と権限も一貫していることを確認してください。

関連情報