drwxr-xr-x 1 root root
(Debian で) LAMP を設定し、/var/www/html の権限を調べた後、root( ) のみを書くことができることに驚きました。
おそらくPHPスクリプトは/var/www/htmlにファイルを生成できますが、確かにPHPスクリプト(またはそのインタプリタ)はrootとして実行されませんか?誰でも私の誤解を理解するのに役立ちますか?
編集する:
PHPをインストールしましたapt-get install php5-common libapache2-mod-php5 php5-mysql php5-cli
ベストアンサー1
PHPスクリプトは次のように実行されます。
- Apacheを使用している場合、Apacheを実行しているユーザーは
User
Apache設定のディレクティブによって決定されます(通常、apache
またはnobody
mod_php
- PHP-FPMを実行しているユーザー(それを使用している場合)
php-fpm
したがって、PHPスクリプトを実行しているユーザーはさまざまです。したがって、所有者とグループ/var/www/html
(またはDocumentRoot
場所)を適切に設定できます。
また、PHPアプリケーションがファイルに書き込んだり上書きしたりすることをまったく望ましくないかもしれません。DocumentRoot
これは、破損しているか安全でないPHP Webアプリケーションの訪問者がリモートでコードを実行する権限を取得できるためです。したがって、Apacheがネットワーク経由で提供および実行できるファイルを作成できるようにPHPアプリケーションを信頼できるかどうかを判断するのはあなたの責任です。
上記と同様の理由で、PHPはrootとして実行されることはほとんどありません(そしてそれを行うべきではありません!)。