3

Rails gems 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上回形针的上传目录更改为/ tmp?

于 2012-12-19T09:35:35.870 回答