【发布时间】:2015-12-08 13:47:55
【问题描述】:
我部署了我的 rails 应用程序,并使用 S3 来托管我将使用回形针上传的图像。这是我不断收到的错误,即使我确实允许 :photo 在我的控制器参数中
2015-12-08T13:40:00.439949+00:00 app[web.1]: [AWS S3 403 0.042095 0 retries] put_object(:acl=>:public_read,:bucket_name=>"customlized",:content_length=>30237,:content_type=>"image/jpeg",:data=>Paperclip::UploadedFileAdapter: shanab.jpg,:key=>"products/photos/000/000/009/original/shanab.jpg") AWS::S3::Errors::AccessDenied Access Denied
2015-12-08T13:40:00.439953+00:00 app[web.1]:
2015-12-08T13:40:00.441272+00:00 app[web.1]: (0.9ms) ROLLBACK
2015-12-08T13:40:00.442792+00:00 app[web.1]:
2015-12-08T13:40:00.442793+00:00 app[web.1]: AWS::S3::Errors::AccessDenied (Access Denied):
2015-12-08T13:40:00.442794+00:00 app[web.1]: app/controllers/products_controller.rb:35:in `block in create'
2015-12-08T13:40:00.442795+00:00 app[web.1]: app/controllers/products_controller.rb:34:in `create'
我的生产.rb
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']
}
}
我确实在 Heroku 上将它配置为 S3 给我的凭据
我的产品.rb
has_attached_file :photo ,
:storage => :s3,
:s3_credentials => Proc.new{|a| a.instance.s3_credentials },
styles: { medium: '300x300>', thumb: '100x100>' }
def s3_credentials
{:bucket => "Deleted", :access_key_id => "Deleted", :secret_access_key => "Deleted"}
end
【问题讨论】:
标签: ruby-on-rails ruby heroku amazon-s3