0

用户使用carrierwave gem 将私​​人文档上传到我的网站。默认情况下,carrierwave 根据数据库 ID 访问图像,这使得其他人很容易猜测他们不应该访问的文档的 url。

我想通过模糊它们的 URL 来使文档更安全,从而通过猜测 URL 来访问文档是不可能的。

请问我该怎么做?

4

2 回答 2

2

您可以在 CarrierWave 中使用UUID作为文件名的标识,由于UUID的性质和概念,这将使猜测文件名几乎是不可能的。

于 2013-05-23T16:48:45.443 回答
-1

只需store_dir在您的上传程序类中重新定义即可。

  def store_dir
    "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{rand 500}_#{model.id}"
  end

好吧,当然不要rand 500在实际应用中使用。

于 2013-05-23T16:48:28.590 回答