【发布时间】:2016-06-26 05:33:45
【问题描述】:
我正在尝试使用 S3 作为 Paperclip 上传文件的主机。 S3服务器在中国北京地区。
# Gemfile
gem 'aws-sdk', '< 2.0'
gem 'paperclip', "~> 4.2"
我已经使用环境变量设置了 AWS。
AWS_ACCESS_KEY_ID: <access key>
AWS_SECRET_ACCESS_KEY: <secret key>
AWS_REGION: 'cn-north-1'
AWS 设置应该是成功的,因为我可以使用在 Rails 控制台中创建存储桶
AWS::S3.new.buckets.create('dns-compat-bucket-name')
我的回形针配置如下
# config/environments/development.rb
config.paperclip_defaults = {
:storage => :s3,
:s3_host_name => 's3.cn-north-1.amazonaws.com.cn',
:bucket => 'superayi-prod-beijing'
}
但是,我仍然收到错误消息:
AWS::S3::Errors::InvalidAccessKeyId
The AWS Access Key Id you provided does not exist in our records.
【问题讨论】:
-
你能在存储桶策略中查看权限吗?
-
还有你把你的 ENV 变量放在哪里了
标签: ruby-on-rails ruby-on-rails-4 amazon-s3 paperclip aws-sdk