没有从aws加载图像


Images are not loading from aws

我想在amazon s3的image标签中显示图像

<img alt="" class="pictureWidth" src="https://xyz.s3.amazonaws.com/images/estimates/1_6.jpg">

我检查了图像的位置,它有权限并且我在浏览器中运行这个url它显示如下

images/estimates/1_6.jpg

下面是上传图像的示例代码

$result = $s3->putObject(array(
            'Bucket'       => $s3bucketName,
            'Key'          => $fileName,
            'Body'         => $fileName,
            'ContentType'  => 'text/plain',
            'ACL'          => 'public-read',
            'StorageClass' => 'REDUCED_REDUNDANCY',
       ));

我也尝试了'ContentType' => 'image/jpeg',但没有运气

https://servicefusion.s3.amazonaws.com/images/estimates/7.jpg

有什么问题吗?

您不应该使用'Body',而应该使用'SourceFile',否则您将上传一个文件名作为其内容的文件。

$result = $s3->putObject(array(
    'Bucket'       => $s3bucketName,
    'Key'          => $fileName,
    'SourceFile'   => $fileName,
    'ContentType'  => 'image/jpeg',
    'ACL'          => 'public-read',
    'StorageClass' => 'REDUCED_REDUNDANCY',
));

参见:putObject

try

   $result = $s3->putObject(array(
        'Bucket'       => $s3bucketName,
        'Key'          => $fileName,
        'Body'         => $fileName,
        'ContentType'  => 'image/jpeg',
        'ACL'          => 'public-read',
        'StorageClass' => 'REDUCED_REDUNDANCY',
   ));

刚刚更新的image/jpeg不是images/jpeg

的其他类型的文件类型,请参阅这里:
http://www.utoronto.ca/web/htmldocs/book/book-3ed/appb/mimetype.html

如果这不是你的问题,请参考:

http://s3browser.com/features-content-mime-types-editor.php