初めまして。初学者の者で、こちらで初めて質問させていただきます。
至らない点もあるかと思いますが、その際はご指摘いただければと思います。
前提・実現したいこと
画像投稿ができるようにしたい。
発生している問題・エラーメッセージ
本番環境の投稿フォームで、jpegの投稿のみバリデーションにかかってしまう
該当のソースコード
【TeamRegisterController】 public function store(Request $request) { $this->validate($request,[ (略) 'image'=>'file|image|max:2048|nullable' ]); $team= new Team; (略) if ($request->file('image') !== null) { if (config('const.env') == "local"){ $image = $request->file('image')->store('public/team'); $team->image = basename($image); } else if(config('const.env') == "production"){ $team->image = Storage::disk('s3')->putFile('public/team', $request->file('image'), 'public'); } } else { $team->image = ''; }
【validation.php】 <?php return [ (略) 'image' => ':attribute 画像は「jpg」「png」「bmp」「gif」「svg」のみ有効です', (略) ]
試したこと
・local環境だとjpeg画像は投稿できる
・本番環境(AWS)ではjpeg以外(png、svg、bmp)は投稿ができる(S3にきちんと保存されている)
・apacheのmime.typesファイルを確認したところ、「MIME type→image/jpeg Extension→jpg jpeg jpe jfif」と記載されていた。
補足情報(FW/ツールのバージョンなど)
php 7.3
laravel5.8
本番環境:AWS (EC2, RDS for MySQL, S3, VPC, Route53, ALB, ACM)、Apache
こちらは確認済み→https://readouble.com/laravel/5.8/ja/validation.html
^
あなたの回答
tips
プレビュー