Heroku照片存储在服务器上



我使用服务器存储用户上传的图片。然而,当我对代码进行更改时,它反映了这一点,并删除了存储在服务器上的图片,这很好。

git push heroku master

如何防止这种情况发生?

Heroku的文件系统是只读的,因此您不能也不应该将上传的文件存储在dynos中。

如果你仔细想想,这是有道理的。你可以让多个dyno运行你的应用程序,所以你不能保证哪个dyno收到了照片。

Dynos无论如何都应该是无状态的,这样您就可以轻松地向上或向下扩展应用程序。

在Heroku上上传文件的首选方式是使用DevCenter中概述的AmazonS3。

就像leonardoborges Heroku的文件系统是只读的。由于你使用的是rails,你可以使用类似宝石的carrierwave,当你在应用程序中处理图像时,它会有所帮助,而且使用Amazon S3设置起来很容易。

其他有用的链接Carrierwave Railscast

最新更新