Rails 4在config/secrets.yml
常量secret_key_base
中声明"验证已签名cookie的完整性"。这些是128个字符(0..f)长。
Paperclip(文件管理)可以使用:hash_secret
选项对可访问文件名进行编码。
https://github.com/thoughtbot/paperclip/wiki/Hashing
使用secret_key_base
作为Paperclip哈希是否有好主意?这似乎是一个很好的解决方案,因为它足够复杂,不在项目提交中,并且每个环境都有一个。
在secrets.yml
中声明2个变量将如下所示:
development:
secret_key_base: 73512
secret_key_asset: 123456
test:
secret_key_base: 3dde2
secret_key_asset: 789456
production:
secret_key_base: <%= ENV["SECRET_KEY_BASE"] %>
secret_key_asset: <%= ENV["SECRET_KEY_ASSET"] %>
......对我来说似乎没什么问题。
此致
答案 0 :(得分:0)
根据Paperclip Wiki的摘录,看来secret_key_base很好。
# config/initializers/paperclip_defaults.rb
Paperclip::Attachment.default_options.update({
url: "/system/:class/:attachment/:id_partition/:style/:hash.:extension",
hash_secret: Rails.application.secrets.secret_key_base
})
您可以为Paperclip使用不同的密钥,但对于大多数项目来说可能没有必要。