我在Heroku上有一个应用程序,用户可以在其中添加图像。当我更新此应用git push heroku master
时,所有图片都会消失,只留下断开的链接。你知道怎么避免吗?
答案 0 :(得分:2)
Heroku没有持久文件存储。您需要将文件存储在Amazon Simple Storage Solution(S3)等服务上。有关更多信息,请参阅Heroku的documentation。此外,您可以查看我们的Heroku文档,了解如何设置S3 here。
答案 1 :(得分:2)
Heroku对其文件系统有特殊限制,因为它是read only。
您只能写入public和tmp文件夹 但是,这些文件夹并不是在整个部署中持久存在的 这意味着您不能依赖它们来存储文件和图像。
您需要将文件发送给等级派对,例如Amazon S3或Google Cloud Storage 大多数文件上传和图像处理(如carrierwave)都允许您将文件发送到S3或任何其他方。
答案 2 :(得分:1)
Heroku不会在其服务器上保留数据,因此您的图像会消失。尝试使用Amazon S3之类的外部存储空间或将其存储在数据库中。