個人メモです。
環境
- さくらVPSサーバー CentOS7
- Laravel 10.4.1
- Apatch
設定方法
- Laravelのルートに移動
cd /path/to/laravel_application
- webserverユーザーにすべてのファイルとフォルダーの所有権を付与する。
※webserverユーザーとは、Webサーバー(Apache、nginxなど)がデフォルトで通常の操作に使用するユーザーのこと。
Ubuntu ではwww-data ユーザー
centosでは apache ユーザー
debian www-data ユーザー
→今回はcentosなのでapache ユーザーを使用。
chown -R apache:apache /var/www/laravel_application
- すべてのファイルに 644 パーミッションを設定、すべてのディレクトリに 755 パーミッションを設定。
sudo find /var/www/laravel_application -type f -exec chmod 644 {} \;
sudo find /var/www/laravel_application -type d -exec chmod 755 {} \;
- storageとbootstrap/cacheのファイルとフォルダーに適切な読み取りと書き込みのアクセス許可を与える。
sudo chgrp -R apache storage bootstrap/cache
sudo chmod -R ug+rwx storage bootstrap/cache
- ユーザーをapacheグループに追加
usermod -a -G apache <ユーザー名>
※ユーザーをグループに追加するコマンド
usermod -a -G グループ名 ユーザー名
→開発に使用するユーザーをapacheグループに追加して、apacheグループと同様の操作が行えるようにするという意図?
参考
Laravelでファイルパーミッションを正しく設定する方法は?
CentOS/Apache/Laravel使用時のpermission設定方法