2015-11-08 96 views
0

我实际上在理解如何执行此操作时遇到了一些困难。 之前我曾经将图像存储在服务器中,但转向生产之前,我决定采用这种方式。所以,将它存储在存储桶example我应该如何获取图片19512491.jpg并将其显示在源代码中?显示存储在s3存储桶中的图像

<img src="image_src_should_go_here"/>

我我应该在桶编辑权限,并允许许可在特定的文件夹,否则读取的内容?非常感谢您......

回答

1

的IMG链接

首先,你要建立一个指向亚马逊S3图像的URL。

确切的URL可能会因使用的地区而异(请参阅Amazon S3 Endpoints)。这将是这个样子:

https://s3-ap-southeast-2.amazonaws.com/BUCKET-NAME/image.jpg 

如果已经配置了你的水桶为静态网站,URL可能看起来像:

https://s3-website-ap-southeast-2.amazonaws.com/BUCKET-NAME/image.jpg 

所以,你在IMG标签使用它,像这样:

<img src="https://s3-ap-southeast-2.amazonaws.com/BUCKET-NAME/image.jpg"/> 

安全

您可以使对象可公开访问或使用预先登记的URL

使对象公开访问的最简单方法是使用桶政策像这样的(从Amazon S3 documentation),使整个斗市民:

{ 
    "Version":"2012-10-17", 
    "Statement":[ 
    { 
     "Sid":"AddPerm", 
     "Effect":"Allow", 
     "Principal": "*", 
     "Action":["s3:GetObject"], 
     "Resource":["arn:aws:s3:::examplebucket/*"] 
    } 
    ] 
} 

就可以了,当然政策,更具选择性,例如只公开特定的目录。

或者,如果你想更选择性,你可以继续在亚马逊S3的私人物品,然后让应用程序生成预签名URL提供身份验证的访问对象为特定的时间段。

这是给文件选择性访问的好方法。例如,如果您使用像Flickr这样的照片共享网站,则可以向私有图片提供私人图片

请参阅文档:Share an Object with Others