Я попробовал следующие две функции, ни одна из них не работает, они могли бы загрузить файл на S3, но если вы откроете загруженный файл из браузера, вы увидите, что он обрабатывается как application / octet-stream, это неправильно …
$s3->upload('mybucket', // bucket
$filename, // key
$imagebinarydata, // body
'public-read', // acl
array('contentType' => 'image/jpeg')); // options
А также
$s3->putObject(array(
'Bucket' => 'mybucket',
'Key' => $filename,
'ACL' => 'public-read',
'contentType' => 'image/jpeg',
'Body' => $imagebinarydata));
Я использую последнюю версию AWS.PHAR
Вам нужно использовать заглавные буквы ContentType
с putObject
как описано в документы:
'ContentType' => 'image/jpeg'
Других решений пока нет …