ruby-on-rails - 使用回形针将 Heroku 上的图像上传到 Amazon s3 时 Rails 访问被拒绝

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

我尝试使用 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']
    }
  }

然后我设置了这样的权限

enter image description here

谢谢!

编辑:

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

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

最佳答案

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']
    }
  }

在创建存储桶时选择区域作为美国标准并使用上面的配置。 试试这个对我有用。希望对你也有用。

关于ruby-on-rails - 使用回形针将 Heroku 上的图像上传到 Amazon s3 时 Rails 访问被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32657488/

相关文章:

mysql - 将数据从 MySQL 复制到 Amazon DynamoDB

ruby-on-rails - rails 数据库 :seed not populating postgresql on Ubuntu 16. 04

css - 在 Rails 4.1 中为表单指定样式

ruby - ruby 中的类和模块

ruby - 所有类方法都是用 "def self.foo"定义的吗?

amazon-web-services - 默认情况下将上传的文件公开到 S3

php - 与 Elasticsearch 进行 AJAX 通信的流量和访问控制解决方案?

ruby-on-rails - user_spec 上未定义的方法 `Factory'

ruby-on-rails - Rails 协会 : Teacher Student Classes

ruby-on-rails - 当查询中存在连接和包含时,Active Record 不会更新集合