Carrierwave s3 403(禁止)错误

时间:2014-11-13 13:40:57

标签: ruby-on-rails-4 amazon-s3 carrierwave fog

我试图让carrierwave使用Amazon S3(在我的Rails 4应用中),我使用fog gem将图像上传到s3

我目前已成功将文件上传到我的存储桶。但我无法恢复图像。服务器提供403 (Forbidden)错误

但是,如果我检查图像,则会在S3中上传。我的图像路径类似于

https://<bucket name>.s3.amazonaws.com/uploads/image/picture/8/card_34676_l.jpg&Signature=<signature>&Expires=<expires>

以下是我的carrierwave配置

CarrierWave.configure do |config|
  config.fog_credentials = {
    :provider               => 'AWS',
    :aws_access_key_id      => '<key>',
    :aws_secret_access_key  => '<access key>',
  }
  config.fog_directory  = '<bucket name>' 
  config.fog_public     = false  
  config.fog_attributes = {'Cache-Control'=>"max-age=#{365.day.to_i}"} # optional, defaults to {}
end

我已使用

everyone设置了默认的受让人权限
  • 列表
  • 上传/删除
  • 查看权限

并设置默认CORS Configuration

<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
    <CORSRule>
        <AllowedOrigin>*</AllowedOrigin>
        <AllowedMethod>GET</AllowedMethod>
        <MaxAgeSeconds>3000</MaxAgeSeconds>
        <AllowedHeader>Authorization</AllowedHeader>
    </CORSRule>
</CORSConfiguration>

可能缺少什么?

0 个答案:

没有答案