Laravel / Intervention / Dropzone.js を使用して、Ajax を使用して自分のサイトに画像をアップロードしています。私が抱えている問題は、アップロード時に一部の画像が「エラー: 500」を返すことです。問題はファイル サイズや寸法ではありません。私はその両方をテストしました。問題は Lightroom だと思います。アップロードに失敗する画像は、Lightroom で編集した画像です。これを引き起こしている画像(エンコード、ヘッダーの送信)に対して行うべきことはありますか。他のすべては正常に動作します。これは私のコードです。
if(Input::hasFile('file-upload')) {
$file = Input::file('file-upload');
$key = Input::get('_uuid');
$img = Image::make($file[0]);
$img = Image::make($file[0])->widen(500, function ($constraint) {
$constraint->upsize();
});
$img = Image::make($file[0])->heighten(1080, function ($constraint) {
$constraint->upsize();
});
$fileName = Uuid::generate();
$extenstion = $file[0]->getClientOriginalExtension();
$fileItself = $fileName . '.' . $extenstion;
$path = "/uploads/" . $fileItself;
$img->save(public_path($path));
}
Dropzone.js オプション
Dropzone.options.newPostForm = {
paramName: "file-upload",
uploadMultiple: true,
dictDefaultMessage: "",
previewsContainer: ".dropzone-previews",
clickable: "#file-upload",
maxThumbnailFilesize: 20,
maxFilesize: 30
}