レンタルサーバー上のLaravelの.envについて

レンタルサーバーのディレクトリ構造によってはpubli_htmlフォルダ内にLaravelのappフォルダなどを設置しなければならないこともあります。
その方法についてはネット上にたくさんあるので割愛しますが、1点だけセキュリティ上配慮するべき点があります。
それは.envファイルについてです。

通常であれば.envファイルはpubli_htlmフォルダより上位に置かれ、Web経由でアクセスすることはできませんがレンタルサーバーの事情等により.envファイルをpublic_html配下に設置した場合は容易に外部からアクセスできてしまいます。
https://example.com/.env

解決方法の一つは.envのパーミッションを600などに変更することで外部からのアクセスを防ぐことができます。

しかしパーミッションを600にしてしまうとcronでartisanを使ってscheduleを動かす場合などは実行ユーザーが自分とは別のユーザー(rootなど)になってしまうため、artisan実行時に.envを読み込めないという問題が起こってしまいます。

これらの条件を両立し解決するためにはパーミッションは644などにし、.htaccessを使って直接.envへのアクセスをdenyするという方法を取る必要があります。

スポンサーリンク
レクタングル大




フォローする

スポンサーリンク
レクタングル大