GNU/Linux >> Linux の 問題 >  >> Linux

Laravelファイルのパーミッションを正しく設定する方法

Webアプリケーションに適切なファイル権限を設定することは、Webホスティングの重要な部分です。このチュートリアルでは、LinuxWebサーバーでホストされているLaravelアプリケーションでファイルのアクセス許可を適切に構成する方法を学習します。

まず、Webサーバーが実行されているユーザー名を特定します。デフォルトのケースをいくつか示します

  • Linux上のNginxはアカウントを使用します– www-data
  • Debianシステム上のApacheはアカウントを使用します– www-data
  • RedhatシステムのApacheはアカウントを使用します– apache

Laravelファイルのパーミッションを設定する

Webサーバーがwww-dataで実行されていると仮定します システム上のユーザー。したがって、すべてのファイルはWebサーバーユーザーと同じユーザー所有権を持つ必要があります。 chownコマンドを使用して、すべてのファイルとディレクトリの所有者とグループ所有者を再帰的に設定します。

sudo chown -R www-data:www-data /path/to/laravel 

次に、すべてのファイルに644のアクセス許可を設定し、すべてのディレクトリに755のアクセス許可を設定します。これはchmodコマンドで実現でき、以下のようにコマンドをまとめて検索できます。

sudo find /path/to/laravel -type f -exec chmod 644 {} \; 
sudo find /path/to/laravel -type d -exec chmod 755 {} \; 

Laravelを正しく機能させるには、ストレージ、キャッシュ、その他のディレクトリに対するWebサーバーへの読み取りおよび書き込み権限を付与する必要があります。したがって、次のコマンドを実行します。

cd /path/to/laravel 
sudo chgrp -R www-data storage bootstrap/cache 
sudo chmod -R ug+rwx storage bootstrap/cache 

これで、Laravelアプリケーションは適切な権限で保護されます。ただし、すべてのファイルにはWebサーバーの所有者とグループ所有者がいるため、FTP/sFTPを介した変更中に問題が発生する可能性があります。この問題を解決するには、ユーザーをWebサーバーのユーザーグループに追加します。

sudo usermod -a -G www-data ubuntu 

別のチュートリアルを読んで、WebサーバーのドキュメントルートのSFTPアカウントを適切に作成してください。

結論

このチュートリアルでは、Laravelアプリケーションのファイル権限を適切に構成する方法を学びました。


Linux
  1. CentOS 7 /RHEL7でIcingaWeb2をセットアップする方法

  2. cPanelファイルマネージャーでファイルのアクセス許可を変更する方法

  3. ファイル内で \n を grep する方法

  1. Linuxでファイルのパーミッションと所有権を別のファイルにコピーする方法

  2. .htaccessを使用してApacheで基本認証を設定する方法

  3. ファイル権限はシンボリックリンクにどのように適用されますか?

  1. Fat32ドライブのファイルパーミッションを変更するには??

  2. 特定のユーザーにパスワードなしのSudoを設定する方法

  3. umask は ACL にどのように影響しますか?