storage
だけでなく、SELinux にもさらに調整が必要です .特に config
dir は、Laravel ブートストラップでこの問題を引き起こす可能性があります。
sudo setenforce permissive
の場合 動作したら、元に戻します sudo setenforce enforcing
次に、以下に従ってください。
SELinux laravel のセットアップ:
sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/site/laravel/storage(/.*)?"
sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/site/laravel/bootstrap/cache(/.*)?"
config
には次のものは必要ないかもしれません 、 しかし、私はやりました。必要でない限り、これを実行しないのが最も安全かもしれません:
sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/site/laravel/config(/.*)?"
次に、dir の調整が行われた後にリセットします。
restorecon -Rv /var/www/site/
私の場合、それは別のUNIXユーザーだったので、これはうまくいきました:
chown -R php-fpm:php-fpm storage
これらが私のために働いた...
sudo find ./storage -type f -exec chmod 666 {} \;
sudo find ./storage -type d -exec chmod 777 {} \;
問題は selinux
にあることが判明
この回答を見つけて、問題を解決しました。
<ブロック引用>
selinux
をオフにして、これが問題であることを証明します コマンドで
setenforce 0
これで書き込みが許可されるはずですが、サーバー全体で追加されたセキュリティをオフにしました。良くないね。 SELinux を元に戻す
setenforce 1
最後に SELinux を使用して、このコマンドを使用してファイルの書き込みを許可します
chcon -R -t httpd_sys_rw_content_t storage
.NET Core RC2 コンソール アプリ (Linux、Debian 8) で System.Data を使用するにはどうすればよいですか?
Ubuntu 16.04 で Docker サービスを開始できない