我将密钥添加到heroku config var中,但我仍然收到错误。
这是正确的方法吗?我忽略了secrets.yml,因为我从其他来源读到,将这个推向公众并不是一个好主意。
在heroku配置var:
[key] SECRET_KEY_BASE
[value] 3280570382948240938
在secrets.yml
production:
secret_key_base: <%= ENV["SECRET_KEY_BASE"] %>
我还做错了什么?
此外,如果我将我的密钥放入heroku的配置变量中,其他开发人员也不会看到这个吗?那么,还不是那种公众吗?我一直想知道这个概念。
你可以用heroku config
设置环境变量
首先在终端上运行以下命令生成密钥
rake secret
现在在下面的命令中使用该键
heroku config:set SECRET_KEY_BASE='put here new generated key'
您可以参考此链接以获取更多参考
这是一个用heroku设置密钥库的简单方法:
heroku config:set SECRET_KEY_BASE=$(rake secret)
你可以用heroku config:get SECRET_KEY_BASE
看到它
并检查导轨是否使用Rails.application.secret_key_base
(例如在heroku run rails console
中)