2013-04-25 4 views
0

Я могу загружать изображения с помощью Paperclip и просматривать их в своем ковше на веб-сайте консоли управления Amazon S3, но URL-адрес, предоставленный Paperclip (например, image.url (: thumb)) не может использоваться для доступа к изображению. Я получаю URL, который выглядит примерно так:Не удается загрузить изображение s3, хранящееся в папке (Rails)

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

Когда я положил, что URL-адрес в браузере, я послал на страницу XML, который гласит: «Ковш вы пытаетесь получить доступ, должен быть решен используя указанную конечную точку. Пожалуйста, отправьте все будущие запросы на эту конечную точку ».

где «конечная точка» является субдоменом пути скрепки. Но когда я перехожу к этой «конечной точке», я просто получаю еще одну ошибку, которая говорит «Access Denied». Однако, согласно информации о файлах, предоставленной сайтом Amazon, изображение доступно для просмотра. Может ли кто-нибудь сказать мне, что я делаю неправильно?

Мой файл 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)

Смежные вопросы