web-dev-qa-db-ja.com

ディレクトリの所有権をApacheユーザーに付与しますか?

LAMPにwordpressをインストールしました。私はUbuntuの新しいものです。そこで、このオンラインチュートリアルを使用しました buntuにwordpressを手動でインストールする方法

しかし、Apacheユーザーにディレクトリの所有権を与えようとしているとき、それは機能していません私は次のコマンドを与えています

Sudo chown admin:www-data /var/www -R 
Sudo chmod g+w /var/www -R

「admin」は、wordpressデータベースユーザー用に選択した名前です。誰でも私にこれを案内してもらえますか?

20
arximughal

データベースユーザーをUNIXユーザーとして使用しないでください。 www-dataを使用します。

Sudo chown -R www-data:www-data /var/www

データベースユーザーとApacheユーザーには違いがあります。実際にファイルを読み取ることができるのは、Apacheユーザーだけです。データベースユーザーは、データベースの読み取り/書き込み権限の付与/取得のみを目的としています。

さらに、webappインストールのデフォルトの許可を保持します。所有しているユーザー/グループを除き、これらを変更しないでください。 webappから指示された場合は、権限を変更します。


セキュリティに関心がある場合は、代わりに次のコマンドを実行できます。

Sudo chown -R $USER:www-data /var/www
Sudo chmod -R 640 /var/www

これにより、実際のファイルがユーザーによって所有されるため、ユーザー(およびroot)のみがそれらを変更できます。 www-dataが参照される理由は、Apacheがファイルを読み取ることはできるが、実際にはファイルに書き込むことができないようにするためです。

640を使用すると、(ファイルの所有者)が読み書きでき、www-dataグループがファイルを読み取ることができます。また、他の人がファイルの内容を読み取れないようにブロックします。

(上記は1つの可能性のある(untested)メソッドのみです。さらに良い方法があります here。

28
Kaz Wolfe