我收到此错误
缺少
中设置这些值secret_token
和secret_key_base
生产' 环境,在config/secrets.yml
我将.yml
个文件添加到.gitignore
。
我部署到heroku
答案 0 :(得分:2)
您应该将您的secret.yml文件提交到您的存储库,但不要包含您的生产密钥。而是从环境变量设置生产密钥,如下所示:
development:
secret_key_base: xxxx
test:
secret_key_base: yyyy
# Do not keep production secrets in the repository,
# instead read values from the environment.
production:
secret_key_base: <%= ENV["SECRET_KEY_BASE"] %>
然后生成一个新的密钥并为Heroku设置ENV变量,如下所示:
$ rails secret
d3039b9b62a7311...
$ heroku config:set SECRET_KEY_BASE="d3039b9b62a7311..."
或者如果你是单行:
$ heroku config:set SECRET_KEY_BASE=`rails secret`