9

昨日、最初の Heroku アプリをデプロイしましたが、すべてうまくいきました。

私のアプリでは、画像をアップロードできます。私はアップロードして、「表示」ページで見ることができました。しかし、今日、その画像は消えました。他のすべては問題なく動作しているようです。アプリケーションは、そこにないイメージを除いて、ローカル マシンと Heroku で正常に動作しています。

何が問題なのですか?二度と起こらないようにするにはどうすればよいですか?

4

3 に答える 3

31

Heroku はファイルのアップロードをサポートしていません。ファイルシステムは読み取り専用です。アップロードしたファイルを別の場所 (またはデータベースから) にホストする必要がありますが、これは悪いオプションです。

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

Amazon S3 が一般的な選択肢です: http://devcenter.heroku.com/articles/s3

アップロードに paperclip やcarrierwave などの gem を使用している場合、S3 の使用は簡単です。構成ファイルで S3 資格情報を設定する必要があり、gem がアップロードを処理し、アップロードされたファイルの URL を提供します。

于 2013-04-25T09:05:33.103 に答える
10

Amazon S3 のような外部ファイルストアではなく、Heroku ファイルシステムにイメージをアップロードした可能性があります。Heroku ファイル システムは一時的なものであり、dyno または再起動間で共有されません。これは Heroku が毎日行うことです。これがここで起こったことであり、その結果、あなたのイメージが失われたのではないかと思います.

于 2013-04-25T09:05:20.240 に答える
2

Heroku のファイル システムは一時的なものです。別の方法として、aws の準備が整うまで、画像を URL として保存できます...

于 2020-12-30T02:41:54.767 に答える