2013-04-25 77 views
4

昨天我部署了我的第一個Heroku應用程序,並且一切都很順利。Heroku在Heroku上消失

在我的應用程序中,您可以上傳圖片,我確實可以在「顯示」頁面看到它。但是,今天的形象消失了。其他一切似乎都很好。該應用程序在我的本地機器以及Heroku上運行得很好,除了不在那裏的圖像。

可能是什麼問題?我怎樣才能確保它不會再發生?

回答

20

Heroku不支持文件上傳。該文件系統是隻讀的。您將 必須將您上傳的文件託管在其他地方(或從數據庫中,這是一個不好的選擇)。

https://devcenter.heroku.com/articles/read-only-filesystem

亞馬遜S3是一個共同的選擇:http://devcenter.heroku.com/articles/s3

如果您使用的是像回形針或carrierwave上載任何寶石,使用S3將是簡單的。您將不得不在配置文件中設置S3憑證,並且該寶石將負責上傳併爲上傳的文件提供URL。

+0

是的,我使用回形針,S3聽起來像個好主意。謝謝 – 2013-04-25 09:08:57

6

我懷疑你可能已經將圖像上傳到Heroku文件系統,而不是像Amazon S3那樣的外部文件存儲。 Heroku文件系統是臨時的,不會在dynos或重新啓動之間共享 - Heroku每天都會這樣做。我懷疑這是在這裏發生的,導致你失去了你的形象。