我刚刚用亚马逊s3制作回形针。 我可以成功上传图片。
当我尝试渲染图像时
<%= image_tag @client.image.url(:thumb) %>
我无法
<img src="http://s3.amazonaws.com/mybucket/clients/images/000/000/009/thumb/id1_001.jpg?1448466990">
找不到图片 当我访问网址时
http://s3.amazonaws.com/mybucket/clients/images/000/000/009/thumb/id1_001.jpg?1448466990
我收到了一条消息
<Message>
The bucket you are attempting to access must be addressed using the specified endpoint. Please send all future requests to this endpoint.
</Message>
<Bucket>mybucket</Bucket>
<Endpoint>mybucket.s3.amazonaws.com</Endpoint>
如何配置回形针以使用正确的路径?
答案 0 :(得分:0)
这件事发生在我身上,通过为回形针设置正确的S3主机名解决了我的问题:
我假设您必须在某处配置您的S3凭据,并按照以下方式进行配置:
paperclip_options = {
:storage => :s3,
:s3_credentials => {
:s3_host_name => PLACE YOUR BUCKET HOST NAME HERE,
:bucket => XXX,
:access_key_id => YYY,
:secret_access_key => ZZZ
},
:s3_protocol => :https
}
Paperclip::Attachment.default_options.update(paperclip_options)
请注意选项:s3_host_name
是解决问题的关键:)