web-dev-qa-db-ja.com

神秘的な権限と所有権を持つDrupal 7サイトフォルダー

問題は、drupalがこのフォルダーを認識し、install.phpページにリダイレクトしないようにするために、サイトディレクトリとそのすべてのサブフォルダーおよびファイルに777のアクセス許可を与える必要があったことです。しかし、仮想ホスティングで、sitesは保護されたフォルダーであり、そのすべてのコンテンツ、特に550のアクセス許可を持つsites/default/settings.phpであることに気付きました。私はここで手品を取得しませんでしたが、drupalはそのフォルダをどのように認識しましたか。 drupalのフォルダーとファイルをrootユーザーと他のSudoユーザーの両方として作成しましたが、役に立ちませんでした。また、drupalには、777の権限を持つサイトしか表示されません。

3
Mr. Madamin

Phpプロセス(Webサーバー)がDrupalファイル)のグループのメンバーであることを確認する必要があります。ファイルの所有者がphpプロセス以外のユーザーであることを確認する必要があります/ Webサーバー。WebサーバーがDrupalコードファイルを上書きできるようにするではないため).

ルート内のすべてのファイルのグループを変更するには:

Sudo chgrp -R webgroup /path/to/drupal

Webサーバーユーザーにグループを追加するには:

Sudo usermod -a -G webgroup www-data

Drupalのファイル権限を正しく設定する方法の詳細については、「 ファイル権限と所有権の保護 」を参照してください。

編集: この回答を拡張して、上記のページに権限を設定するためのスクリプトが含まれていることを指摘してください。 http://drupal.org/node/990812 には、進行中の権限を設定するためのDrushコマンドもあります。これらのスクリプトはどちらも役立ちますが、ファイルのユーザーとグループの所有権を正しく設定し、Webサーバーのユーザーが上記で説明したように該当するグループのメンバーであることを確認した場合のみです。これらの概念について説明しているので、引用ページを注意深くお読みください。

3
greg_1_anderson