Paperclip (2.3) を使用して、Ubuntu で実行されている Rails 3.0.3 アプリで画像のアップロードを処理しています。Paperclip は宣伝どおりにアップロードを処理していますが、アプリケーションの /tmp フォルダーに作成された RackMultipart* ファイルは保持されます。つまり、ファイル自体が削除されるのではなく、単に蓄積されます。tmpreaper を使用して古い tmpfiles を削除できることはわかっていますが、よりエレガントな (そしてスケーラブルな) ソリューションを見つけたいと思っています。
一時ファイル (RackMultipart* ファイルなど) が (/tmp ではなく) Rails アプリのルート ディレクトリに蓄積されるという以前の問題がありました。次のように、environment.rb ファイルに一時パスを明示的に設定することで、これを解決しました。
ENV['TMPDIR'] = Rails.root.join('tmp')
一時ファイルが適切に処理されるように設定する必要がある別の環境変数はありますか?つまり、モデルに保存されたら削除されますか? これが Paperclip の問題なのか、Rails のセットアップの問題なのかはわかりません。
私は高低を検索しましたが、これについてはほとんど進歩していません。どんなリードにも感謝します。
心から感謝します。
PS - 現在、ストレージに S3 を使用しています。ただし、これは問題に関連していないようです-ファイルをローカルに保存していたときに同じ問題が発生しました。