2016-04-14 51 views
0

如果我在Heroku上託管一個小型Django網站,並且我只使用一個dyno,是在該服務器上上傳媒體文件保存還是應該使用AWS S3存儲來存儲媒體文件?媒體存儲的其他選擇是什麼?Heroku上的媒體文件

回答

4

不,將事情存儲在Heroku文件系統上永遠不會安全。儘管你只有一個測功機,它仍然是短暫的,並且可以在任何時候被殺死;例如當你推新的代碼時。

3

使用S3是要走的路(Azure和Google提供的替代品)。使用S3還有其他幾個優點,主要是在不強調小型服務器的情況下爲文件提供服務的能力。

雖然您的站點很小,但動態碼也非常小,因此如果使用正確,S3的主要優勢是您可以獲得AWS S3基礎架構的支持來爲文件提供服務。通過「正確使用」,我的意思是你想直接向/從S3上傳/下載文件,所以你的服務器只用於簽署S3網址,但實際的文件永遠不會通過你的服務器。

檢查https://devcenter.heroku.com/articles/s3-upload-pythonhttp://docs.fineuploader.com/quickstart/01-getting-started.html(我強烈建議Fine-Uploader如果您可以使用免費版本或承擔小許可費)。

顯然,你也可以在django中使用django-storage-redux來實現S3媒體文件,但這意味着你的服務器將會忙於上傳文件。如果你的小型服務器沒問題,那也可以。

+1

更新:Fine Uploader自版本5.9.0起獲得MIT許可(100%免費)。 –

+1

未來的訪問者MIT許可證將使用戶陷入陷阱,當未來的版權侵權發生時開發者不對此問題負責,只有用戶(麻省理工學院授權用戶)儘量避免麻省理工授權的軟件 –