【问题标题】:Heroku error with with amazon s3亚马逊 s3 的 Heroku 错误
【发布时间】:2016-12-22 22:00:33
【问题描述】:

对于我的 ruby​​-on-rails 应用程序上的图像上传,我使用 ruby​​ gem 回形针,它在本地工作得很好。说到heroku上的虚拟主机,我想使用amazon s3来存储图片。但是每次我上传图片时,我都会收到消息

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

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

未初始化的常量 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'

有人知道我可以做些什么来使它工作吗?

【问题讨论】:

  • 你为什么不首先检查日志文件,因为消息明确要求你这样做?
  • 我试过了,但对我的帮助并不大。但是在其中一行中它说“NameError(未初始化的常量Paperclip :: Storage :: S3 :: AWS”可能是问题吗?

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


【解决方案1】:

问题解决了。 如果您并行运行以下 gem,它可以运行。

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

就是这样。

【讨论】:

    猜你喜欢
    • 2013-09-08
    • 2018-05-18
    • 2013-12-23
    • 2012-09-28
    • 2010-10-20
    • 2012-05-01
    • 2018-02-10
    • 2013-05-12
    相关资源
    最近更新 更多