3

Rails gemのDragonFlyPaperclipはどちらも、アップロードされたファイルを格納するために public/system フォルダーを使用します。

私の知る限り、このフォルダには誰でもアクセスできます - 少なくともルート ファイル、404.html など。

これらのアップロードされたファイルを保護するにはどうすればよいですか? 利用可能な構成オプションはありますか?

ユーザーのアップロードから生成されたトランスコードされたビデオ ファイルを処理し、いくつかの権限チェックを行って利用できるようにする必要があります。

推奨事項はありますか?

4

1 に答える 1

1

Dragonfile についてはわかりませんが、クリップ ファイルのアップロード オプションを変更できます。

代わりに Amazon S3 を使用できますか?

以下を環境に追加します。

config.paperclip_defaults = {
  :storage => :s3,
  :s3_credentials => {
    :bucket => ENV['AWS_BUCKET'],
    :access_key_id => ENV['AWS_ACCESS_KEY_ID'],
    :secret_access_key => ENV['AWS_SECRET_ACCESS_KEY']
  }
}

これを gemfile に追加して、s3 gem がインストールされていることを確認します。

gem 'aws-sdk'

それは役に立ちますか、それとも処理するためにサーバーに保持する必要がありますか??

- 編集 -

s3 を使用できない場合、heroku は一時ファイルの使用を推奨しているようです。この投稿を読んでください:

heroku の paperclip のアップロード ディレクトリを /tmp に変更するにはどうすればよいですか?

于 2012-12-19T09:35:35.870 に答える