【问题标题】:Deploying on Heroku - Images disappears after upload在 Heroku 上部署 - 上传后图像消失
【发布时间】:2015-09-11 15:32:53
【问题描述】:

我在 Heroku 上部署了一个我在 Ruby on Rails 上编写的应用程序。这是一个电影评论应用程序。

我可以将图像从我的计算机上传到在线网络应用程序。其他一切都按照我的期望工作。

图像在一天后消失。我的要求是让图像继续渲染。

我正在使用 Rails 中的 Paperclip gem。这只发生在已部署的版本上,而不是本地主机上。

【问题讨论】:

  • 这里没有足够的信息来帮助您。给我们看一些源代码。
  • 附带说明,应该是“这是垃圾”,而不是“抽筋”
  • 谢谢,下次我会记住的!大声笑

标签: ruby-on-rails image heroku deployment paperclip


【解决方案1】:

Heroku 上的默认上传位置是临时存储。这是因为每次部署时您都会获得不同的 Web Worker。

您需要使用 S3 或其他位置来存储您的文件。幸运的是,Paperclip on Heroku 对此有很好的记录。

主要的配置差异是这样的。将gem 'aws-sdk' 添加到您的Gemfile 中,然后在config/environments/production.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']
  }
}

【讨论】:

  • config 文件夹中的什么位置包含回形针默认值?例如,应用程序、数据库、环境......?
  • 道歉。这是在 config/environments/production.rb
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-19
  • 2019-11-04
  • 1970-01-01
  • 2021-08-25
相关资源
最近更新 更多