【问题标题】:Rails Access Deined when uploading image on Heroku to Amazon s3 with paperclip使用回形针将 Heroku 上的图像上传到 Amazon s3 时,Rails 访问被拒绝
【发布时间】:2015-09-18 17:06:26
【问题描述】:

我尝试使用 amazon S3 上传图片,但出现此错误:

AWS::S3::Errors::AccessDenied (Access Denied)

我使用回形针配置:

    config.paperclip_defaults = {
    :storage => :s3,
    :s3_credentials => {
      :bucket => ENV['S3_BUCKET_NAME'],
      :access_key_id => ENV['AWS_ACCESS_KEY_ID'],
      :secret_access_key => ENV['AWS_SECRET_ACCESS_KEY']
    }
  }

我设置了这样的权限

谢谢!

编辑:

我创建了另一个存储桶,它可以工作,但现在我遇到了这个错误:

NoMethodError (undefined method `first' for nil:NilClass):

【问题讨论】:

  • 您是否在 Heroku 配置中设置了 ENV 变量?
  • 是的,我设置了 AWS 配置变量

标签: ruby-on-rails ruby amazon-web-services heroku amazon-s3


【解决方案1】:

production.rb/development.rb

config.paperclip_defaults = {
    :storage => :s3,
    :s3_protocol => 'http',
    :s3_credentials => {
      :bucket => ENV['S3_BUCKET_NAME'],
      :access_key_id => ENV['AWS_ACCESS_KEY'],
      :secret_access_key => ENV['AWS_SECRET_ACCESS_KEY']
    }
  }

在创建存储桶时,将区域选择为 US-Standard 并使用上述配置。 试试这个对我有用。希望对你也有用。

【讨论】:

    猜你喜欢
    • 2021-04-21
    • 1970-01-01
    • 1970-01-01
    • 2019-09-18
    • 2021-12-26
    • 2015-10-01
    • 1970-01-01
    • 2019-10-11
    • 2015-12-31
    相关资源
    最近更新 更多