2011-07-11 54 views
36

Heroku只有100MB的文件存儲,對不對?我正在製作一個低級Rails應用程序,我非常喜歡Heroku,但是如果我的應用程序允許每個用戶上傳一張圖片,我可能會很快耗盡空間......是否有一個簡單的解決方案,可以讓我有替代方案文件存儲的配置文件圖片或類似的東西?Heroku文件存儲

+21

雖然你確實希望在Heroku上使用S3(因爲文件空間只是暫時的,並且不會持久存儲),用於存儲配置文件圖片等內容(請參閱下面的Codeglot答案),但我想指出100MB的限制是只適用於slu((應用程序的編譯源代碼和寶石)。你的/ tmp目錄實際上可以容納非常大的文件(我認爲我已經看到4GB的存儲可以暫時存儲)。但是,如果您的dyno重新啓動,您將失去一切,因此它只能用作臨時存儲空間,而不是永久存儲空間。 –

+0

非常有幫助,萊利。謝謝! –

+1

另外參見Heroku開發中心文章[這裏](http://devcenter.heroku.com/articles/s3)上的主題 –

回答

18

this blog post

在你的模型。

has_attached_file :picture, 
        :styles => {:large => "275x450>"}, 
        :storage => :s3, 
        :s3_credentials => "#{RAILS_ROOT}/config/s3.yml", 
        :path => "appname/:attachment/:style/:id.:extension" 

在s3.yml在您的配置目錄:

development: 
     bucket: bucketname 
     access_key_id: key 
     secret_access_key: key 

    production: 
     bucket: bucketname 
     access_key_id: key 
     secret_access_key: key 

然後在亞馬遜S3去註冊一個鬥:http://aws.amazon.com/s3/

+4

鏈接已經死機。你知道有沒有新的? –

+1

@DonalRafferty它仍然在回踩機器上。 – Tijmen