【Solved】 Laravel sail 本番環境で画像投稿 500 error
はじめに
Laravel 初学者の私が学習した内容をアウトプットしていく記事になります。
冗長している点や軽い書き方などあれば御指南お願いいたします。。。
前提条件
・PHP
・Laravel sail
・Heroku
・AWS S3
エラー
" Missing required client configuration options: region While Trying to Implement S3 "
と本番環境で画像投稿を試みたが、上記のエラーが出てきた。
要は、「 画像を上げる際にクライアント設定オプションがない 」 と注意された。。。
ローカル環境では上手くいっていたのに、本番環境でなんで!?
解決策
答えは、ものすごく単純、、、
デプロイ ( 今回は Heroku )にconfig:set
( AWS )を忘れていたため。凡ミスてか詰めが甘い。
ローカル環境では、.env
にそれぞれを設定していたためローカルでは正常に動作
AWS_ACCESS_KEY_ID={アクセスキー}
AWS_SECRET_ACCESS_KEY={シークレットアクセスキー}
AWS_DEFAULT_REGION=ap-northeast-1(東京の場合)
AWS_BUCKET={バゲット名}
しかし、.env
ファイルは隠しファイルなのでリリースしようが反映されない。
なので、Heroku に各情報を入れなければならない。
あとは、セットするだけです。簡単。
heroku config:set
または、アプリ内で直に書いてセットするだけでした。
完了したら、Web Applicaton Debud Mode
をfalse
に直しておきましょう!!
まとめ
エラーのまとめ記事になりますので、記録用として書かせていただきました!
調べていたら、php artisan config:cache
したら直ったなどの記事をいくつか見受けましたが、あまりオススメはしません!!
ファイルの役割を理解して取り組むことが大事ですね。(切実に)
ご拝読ありがとうございました!!