web-dev-qa-db-ja.com

Nginxの永続的なアクセス許可の修正

/ var/www/htmlディレクトリの権限に少し問題があります。主な問題は、新しいファイルを作成するたびに、許可されていないエラー403を回避するために777の許可を与える必要があったことです。/var/www/htmlディレクトリ内のすべてのファイルとサブディレクトリに永続的な修正がありますか?.

私は本当にあなたの助けが必要なので、あなたが解決策を知っていることを願っています。

ありがとう!

1
Alex Sadovskyi

アクセス許可を常に手動で設定する必要を回避するために、setfaclコマンドを使用して、将来のフォルダーとファイルがユーザーが設定したデフォルトのファイルアクセス制御を取得するようにします。

手順は次のとおりです。

  1. 現在の設定を変更します。

    Sudo chown -R www-data:www-data /var/www/html
    
  2. そのグループに自分を追加します。

    Sudo useradd www-data $USER
    
    • ログアウトしてから再度ログインして、これを有効にするか、有効になっていない場合は再起動します
  3. デフォルトのfacl(ファイルアクセス制御リスト)を設定します

    Sudo setfacl -d -R -m u:www-data:rwx,g:www-data:r-x,o::r-x /var/www/html
    
    • Sudo getfacl /var/www/htmlを実行して、変更を確認します

注:これにより、デフォルトの権限が755に設定されます

0
George Udosen

どのユーザーがファイルを所有していますか? www-data(または/etc/nginx/nginx.confuserに設定されている値)以外の場合は、すべてのユーザーに許可を与える必要があります。これは 8進数の許可の最後の桁です 、またはファイル/フォルダーの所有者を変更します。

所有者をwww-dataに変更するには、chown www-data:www-data -R /var/www/html/を実行します。

所有者を変更したくない場合は、chmod 664 -R /var/www/html/を実行できます。
最後の4は、すべてのユーザーがファイル/フォルダーを読み取ることができるため、Nginxはファイルを表示できるが編集はできないことを意味します。

0
Carlgo11