Posted at

Laravelアプリをdeployerでデプロイ時にenvが読めなくなったら確認すること

More than 1 year has passed since last update.

ハマった際になかなか言及している記事に出会えなかったのでメモ。


検証環境


  • Laravel 5.3.1

  • PHP 7.0.1


デプロイヤーが実行しているタスクを確認

Laravel向けのdeploy.phpを生成していくと、デフォルトで artisan:config:cache を実行しています。

これは設定を /bootstrap/cache/config.php にキャッシュして利用するもの。パフォーマンスを向上してくれます。


プログラム内のenv()を確認

上記のキャッシュを利用すると、プログラム内で env() 関数で読めなくなります。

キャッシュファイルを利用する場合は、 config() を利用しましょう!


// 修正前
$value = env('app.hoge');

// 修正後
$value = config('app.hoge');

どんな処理をしてくれてるかよく理解しようねというお話でした・・・。