Paperclip + S3 + Heroku,但出了点问题

Paperclip + S3 + Heroku, but something went wrong

为了在我的应用程序上将图像上传到 Amazon S3

,我遵循了一些教程(https://www.youtube.com/watch?v=0_2VBDoowHs , https://devcenter.heroku.com/articles/paperclip-s3

但是我在上传图片时一直收到错误"We're sorry, but something went wrong. If you are the application owner check the logs for more information."

我想知道一种测试应用程序是否成功访问 S3 存储桶的方法。或者甚至是我可以检查发生了什么的日志,我只能访问 heroku 日志并且它没有太大帮助:

2016-04-03T21:24:05.972064+00:00 heroku[worker.1]: Error R12 (Exit timeout) -> At least one process failed to exit within 30 seconds of SIGTERM

2016-04-03T21:24:05.972138+00:00 heroku[worker.1]: Stopping remaining processes with SIGKILL

2016-04-03T21:24:07.795254+00:00 heroku[worker.1]: Process exited with status 137

要查看应用程序是否成功将图片上传到您的存储桶,只需尝试上传然后检查 AWS 上的存储桶。如果上传在那里,中提琴。

这里有一些有用的 Heroku 应用程序调试设置。

production.rb中:

# More meaningful logs
config.log_level = :debug

# More meaningful error pages
config.consider_all_requests_local = true

所以,这很简单。

Paperclip 似乎不支持较新版本的 aws-sdk。所以我必须更改我的 Gemfile 才能使用 aws-sdk 2.0 或更早版本。

gem 'aws-sdk', '< 2.0'

问题解决了。

感谢大家的帮助。在 development.rb 中使用 AWS 密钥的环境变量对调试代码有很大帮助。