サーバーのディレクトリに権限の問題があります。最初はファイル権限を読み、drwx--S---
ディレクトリ所有者としてログインしたFTPクライアントに接続してディレクトリを管理できますが、ブラウザでそのファイルを表示しようとすると、権限がないという「禁止」メッセージが表示されます。ファイルを表示するには。使ったら
sudo chmod -R 644 my_directory
ディレクトリの権限を変更してdrw-r-Sr--
使用します。
sudo chmod g+x my_directory
ディレクトリの権限を変更した後は、すべてのブラウザdrw-r-sr--
からファイルを読み取ることができますが、FTP経由でディレクトリにファイルを転送または表示することはできません。
答え1
あなたの質問に基づいて仮定します。 Webサーバープロセスは、ディレクトリのグループ所有権と同じグループにあります。
ディレクトリ権限から実行(x)ビットを削除し、グループにのみ返しました。これはディレクトリです所有者実行権限がなく、ディレクトリを変更/通過できる必要があります。このため、絶対権限でchmod -Rを使用することは危険です。次のことをお勧めします。
ディレクトリ権限を変更してください。
sudo find my_directory -type d -exec chmod 2750 {} \;
ディレクトリの閲覧を中止したので、これを何度も実行する必要があるかもしれません。上記のコマンドを実行したときに権限エラーが発生した場合は、そのエラーが解決されるまで再実行してください。
ファイル権限を変更してください。
sudo find my_directory -type f -exec chmod 0640 {} \;
これを完了したら、ディレクトリに次の権限を付与する必要があります。
drwxr-s---
そして、ファイルには次の権限が必要です。
-rwxr-x---
UNIX 権限をよりよく理解するには、以下をお読みください。人 2 chmod。確かに退屈な読み取りですが、各ビットの意味を説明します。