Rya*_* Yu 14 ruby-on-rails amazon-s3 paperclip
我想,对于这个问题应该是一个非常简单的解决办法,但我似乎无法让它发挥作用.我有一个Rails 4应用程序,一个photograph带有Paperclip属性设置的用户模型,我把它链接到S3.
这是用户模型:
has_attached_file :photograph,
:styles => { :medium => "300x300>", :thumb => "100x100>" },
:storage => :s3,
:bucket => " my-bucket-name ",
:default_url => '/images/:attachment/missing_:style.png',
:s3_credentials => S3_CREDENTIALS
Run Code Online (Sandbox Code Playgroud)
图像被添加到我的S3桶中就好了,但是当我尝试渲染图片时<%= image_tag @user.photograph.url %>,它不会显示出来.经过进一步检查,图片网址为:
http://s3.amazonaws.com/my-bucket-name/users/photographs/000/000/001/original/20121103_132556.jpg?1388619625
如果我在浏览器中关注此URL,我会看到一个XML文件,如下所示:
<Error>
<Code>PermanentRedirect</Code>
<Message>
The bucket you are attempting to access must be addressed using the specified endpoint. Please send all future requests to this endpoint.
</Message>
<RequestId> ... </RequestId>
<Bucket>my-bucket-name</Bucket>
<HostId>
...
</HostId>
<Endpoint>my-bucket-name.s3.amazonaws.com</Endpoint>
</Error>
Run Code Online (Sandbox Code Playgroud)
因此,当我http://my-bucket-name.s3.amazonaws.com/actives/photographs/000/000/001/original/20121103_132556.jpg?1388619625在浏览器中关注网址时,我看到图片就好了.
如何更改用户模型中的端点?处理这个问题的正常方法是什么?我必须补充一点,我的S3斗是北加州地区.谢谢.
Rya*_* Yu 24
解决了!刚刚在我的User模型中添加了这两行:
:url =>':s3_domain_url',
:path => '/:class/:attachment/:id_partition/:style/:filename',
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5459 次 |
| 最近记录: |