描述
我在部署的时候,error.log 说 缺少 secret.yml 里面的 production 的 token
然后,我 Google 了一下,大致都是说,需要 rake secret 一个随机的 token
再者,添加到 secret_token.rb 里面
但是,我发觉我的项目里 没有 secet_token.rb 这个文件,我是手动生成的
请问,如何使用命令去生成这个文件呢?
这是从 ruby-china 搜索 secret_token 出来的贴子:https://ruby-china.org/topics/20261
secret_token
config/secrets.yml里
@lyfi2003 所以,我把随机生成的 30 位 Key 复制到 prodcution_key_base 就可以了?
production 一般是 secret_key_base: <%= ENV["SECRET_KEY_BASE"] %> 这样吧。。。
secret_key_base: <%= ENV["SECRET_KEY_BASE"] %>
我是用的 foreman 配的 .env
foreman
.env
rails4.1.2,rake secret 再复制到 config/secrets.yml 里面的 production 位置,我这样干的。
用不用 secet_token.rb 和你的 rails 版本有关
@huobazi 在用 Rails-4.1.2 了,一开始不知道,原来是版本问题!
项目默认生成的 secrets.yml 是在 gitignore 里面的。所以 clone 完了会找不到文件.. 可以手动把该文件纳入版本控制,production 环境通过设置系统的环境变量 ENV["SECRET_KEY_BASE"] 来配置 production 的 secret_key