web-dev-qa-db-ja.com

public_HTMLフォルダーのアクセス権に関する質問

CPanelを使用する共有ホスティングアカウントがあり、su_phpと思います。既定では、public_HTMLディレクトリのアクセス許可は750に設定されています。これにより、サイトとpublic_HTML内のすべてのフォルダー/ファイルを、サイトにアクセスしたすべてのユーザーが表示できるようになります。これは、su_phpがサーバーをユーザーとして実行できるため、phpを処理したり、ファイルを読み取ったり、サイトビューアーに提供したりできるためだと考えています。 「その他」の許可を不要にします。

しかし、public_HTMLディレクトリ内のフォルダーのアクセス権を(755ではなく)750に設定し、そのフォルダー内のページにアクセスしようとすると、ブラウザーから403が表示されます。 750に設定しますが、その中のフォルダーは755に設定する必要があります。これを手伝ってくれる人がいたら、本当に感謝しています!

1
Joe

W3D、あなたは正しいです。これは、public_HTMLがApacheがメンバーであるグループ「nobody」に所有されているという事実に帰着します。作成するディレクトリとファイルは、「nobody」グループではなく、自分のグループの一部です。したがって、Apacheはpublic_HTMLフォルダーにアクセスしている間、そのフォルダーのグループの一部であるため、750のアクセス許可のみが必要です(これは、同じサーバー上の他のユーザーがpublic_HTMLフォルダーを表示およびアクセスできないようにするためにも最適です) 。しかし、Apacheが作成したディレクトリまたはファイルに到達すると、Apacheはそのグループの一部ではなくなります。そのディレクトリまたはファイルに対して、Apacheは実際には「その他」としてのみ修飾されます。したがって、これらのディレクトリとファイルを755に設定する必要があります。

返信ありがとうございます。私はまだ賛成できないか、そうします。

1
Joe

750ルールを継承していないため、public_HTML内のファイルとフォルダーにアクセスできます。設定によっては、子の許可が親の許可よりも優先される場合がありますが、これが当てはまると思います。

ソース: スタックオーバーフロー

0755 =ユーザー:rwxグループ:r-xワールド:r-x

0750 =ユーザー:rwxグループ:r-xワールド:---(つまり、ワールド:アクセスなし)

r =読み取り

w =書き込み

x =実行(ディレクトリのトラバース)

1
Simon Hayter