2013-04-25 83 views
0

我可以使用Paperclip上傳圖像,並且可以在亞馬遜的S3管理控制檯網站上的我的存儲桶中看到它們,但Paperclip提供的URL(例如image.url(:拇指))不能用於訪問圖像。我得到的URL看起來是這樣的:無法下載使用Paperclip(Rails)存儲的s3圖像

http://s3.amazonaws.com/xxx/xxx/images/000/000/012/thumb/image.jpg?1366900621

當我把我的瀏覽器,網址,我發送給美國XML頁面:「您嘗試訪問的桶必須解決的問題使用指定的端點,請將所有未來的請求發送到此端點。「

其中「端點」是Paperclip路徑的子域。但是當我去那個「端點」時,我只是得到另一個錯誤,說「拒絕訪問」。然而,根據亞馬遜網站提供的文件信息,該圖像是公開可查看的。有人能告訴我我做錯了什麼嗎?

我development.rb文件只包含以下內容:

config.paperclip_defaults = { 
    :storage => :s3, 
    :s3_credentials => { 
     :bucket => AWS_BUCKET, 
     :access_key_id => AWS_ACCESS_KEY_ID, 
     :secret_access_key => AWS_SECRET_ACCESS_KEY 
    } 
    } 

回答

2

我把它通過更改默認的工作:URL

# config/initializers/paperclip.rb 
Paperclip::Attachment.default_options[:url] = ':s3_domain_url' 
Paperclip::Attachment.default_options[:path] = '/:class/:attachment/:id_partition/:style/:filename' 

我在美國國內來的,但它似乎這仍然是我的代碼工作所必需的(參見https://devcenter.heroku.com/articles/paperclip-s3