ruby-on-rails – 在部署到Heroku时,使用Rails secrets.yml的步
我正在使用Rails 4.1.1和
ruby 2.0.0
我目前忽略了我的secretts.yml文件到我的gitign for github. secrets.yml development: secret_key_base: numb3r57ndl3tt3r5 test: secret_key_base: differentnumbersandletters13531515 production: secret_key_base: <%= ENV["SECRET_KEY_BASE'] %> 如果此生产密钥是动态的,它从何处读取?我们在哪里提供这些信息?如果没有到github那么这些信息如何到达heroku? 我的heroku应用程序设置中已经有一个秘密密钥环境变量. 有人可以解释概念步骤,以及如何正确利用secrets.yml而不暴露公钥的秘密密钥的实际步骤? 如果您还可以为其他API添加另一个密钥,那么也会非常感激. 我想了解解释步骤中发生的事情,而不是“做这个,做这个,做这个”.此外,如果有代码,请指定应放入哪个文件,而不是仅仅提供代码,并假设读者只根据代码知道它的位置(严厉查看heroku指南编写者) 谢谢! =] 解决方法
如果您使用此键<%= ENV [“SECRET_KEY_BASE']%>
在本地计算机上,您可以在shell中设置环境变量,例如(bash或zsh) export SECRET_KEY_BASE="yourkeybasehere" 并模拟你在生产(但在你的本地机器)上运行 RAILS_ENV=production rails s 但是,通过在您的应用程序上运行heroku config:set命令,可以在Heroku上部署,使用他们所谓的配置变量. heroku config:set SECRET_KEY_BASE=yourkeybasehere 然后Rails应用程序将此配置var填充到secret.yml中 production: secret_key_base: yourkeybasehere 希望这能解释您需要了解的内容. 但是,如果你想玩和测试. <!DOCTYPE html> <html> <head> <title><%= ENV['USERNAME'] %></title> </head> <body> <%= yield %> </body> </html> 然后部署到heroku并运行 heroku config:设置USERNAME = gwho 你应该在页面标题处看到’gwho’. 关于Heroku配置变量的更多细节:https://devcenter.heroku.com/articles/config-vars 有关Rails 4.1 secrets.yml:http://edgeguides.rubyonrails.org/4_1_release_notes.html#config/secrets.yml的更多详细信息 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |