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 密钥的环境变量对调试代码有很大帮助。
为了在我的应用程序上将图像上传到 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 密钥的环境变量对调试代码有很大帮助。