2011-07-13 12 views
2

私はWordPressを使用しています.WebPressによって作成されたファイルには、Webサーバーが実行されているユーザーではなく、作成したファイルのユーザーが必要です。たとえば、私のWordPressのファイルとディレクトリは、グループwww-dataphilipによって所有されています。 WordPressがファイルを作成するとき、ファイルの所有者をphilipとし、www-dataにしないでください。setuidまたはstickyを使用して、PHPによって作成されたファイルを特定のユーザーにすることはできますか?

これは可能ですか?私の疑問は、それがsetuidまたはsticky bitで達成できることですが、私はそれをどのように適用するかはわかりません。

答えて

1

多大な努力を払う必要はありません。あなたが記述していることから、mod_phpなどを使ってPHPを実行しているようです。 Webサーバーユーザーとして、Webサーバー内で常に実行されます。 setuid/setgidは新しいプロセスが実行されている場合にのみ動作しますが、ここではそうではありません。

これを回避するには、CGIまたはFastCGI(すべてのPHPスクリプトを自分のユーザーとして実行させます)を使用してPHPを実行することができますが、それはおそらく入りたくない余分な設定です。

+0

duskwuffさん、ありがとう、ええ、私は本当にFastCGIを使いたいとは思っていません。私は私が持っているものと仕事をしなければならないと思う。 –

0

グループにアクセスさせたくない場合は、スティッキービットを使用してg-rwxを設定することができます。 setgidの問題(ユーザーではなくグループの変更を要求した)は、コマンドを実行しているユーザーがそのグループを割り当てる特権を持っていなければならないということです。ウェブサーバー(つまりwww-データ)にアクセス権を与えたくない場合は、アクセス権のあるグループにgidを変更したくないと思われます。それ以外の場合は、cronやその他のスケジューラを介して、Webサーバに対してこのような変更を加えて、他の権限を持った他のプロセスを用意する必要があります。

関連する問題