首页 文章

Heroku错误与亚马逊s3

提问于
浏览
3

对于我的ruby-on-rails应用程序上的图像上传,我使用了ruby gem paperclip,它在本地工作得很好 . 说到heroku上的虚拟主机,我想用亚马逊s3来存储图片 . 但每次我上传图片时,都会收到消息

我们很抱歉,但出了点问题 . 如果您是应用程序所有者,请检查日志以获取更多信息 .

在网上有人说我必须使用比v2.0更早的'aws-sdk',但不幸的是我的控制台说

未初始化的constat aws

所以网站不再在本地主机上运行,但也不在heroku上运行(我收到应用程序错误) .

所以我坚持使用2.3,这也是在heroku heorku website上使用的 .

AWS信息(AWS_ACCESS_KEY_ID,AWS_BUCKET,AWS_REGION,AWS_SECRET_ACCESS_KEY ...)和写/读权限应该是正确的

production.rb 部分看起来像这样

config.paperclip_defaults = { 
  storage: :s3,
    s3_credentials: {
      bucket: ENV.fetch('AWS_BUCKET'),
      access_key_id: ENV.fetch('AWS_ACCESS_KEY_ID'),
      secret_access_key: ENV.fetch('AWS_SECRET_ACCESS_KEY'),
      s3_region: ENV.fetch('AWS_REGION'),
    }
  }

Gemfile

gem 'paperclip', '~> 4.3', '>= 4.3.6'
gem 'aws-sdk', '~> 2.3'

有人知道我能做些什么让它起作用?

1 回答

  • 1

    问题解决了 . 如果你并行运行以下gems,它可以运行它 .

    gem 'aws-sdk', '~> 2.3'
    gem 'aws-sdk-v1'
    

    而已 .

相关问题