2012-01-04 85 views
1

我使用我的服務器來存儲用戶上傳的圖片。這很好,但是當我改變它反映的代碼並刪除存儲在服務器上的圖片時。Heroku照片存儲在服務器上

git push heroku master 

如何防止這種情況發生?

回答

7

Heroku的文件系統是隻讀的,因此您不能也不應該將上傳的文件存儲在您的dynos中。

如果你仔細想想,這是有道理的。你可以有多個運行你的應用程序的dynos,所以你不能保證哪個dyno正在接收圖片。

無論如何,Dynos應該是無狀態的,所以你可以輕鬆地擴展或縮小你的應用程序。

在Heroku上進行文件上傳的首選方式是使用Amazon S3,如DevCenter中所述。

+0

感謝。我會給它一個鏡頭。 – 2012-01-05 01:19:07

3

像leonardoborges Heroku的filesytem是隻讀的。由於您使用的是導軌,因此您可以使用像carrierwave這樣的寶石,這有助於在您的應用中處理圖像,並且使用Amazon S3進行設置很容易。

其他有用的鏈接 Carrierwave Railscast