我在运行 rails 应用程序时收到此错误,这是完整的错误
ArgumentError(为 cookie 会话数据生成完整性哈希需要一个秘密。在 config/initializers/secret_token.rb 中使用 config.secret_token = "some secret phrase of at least 30 characters"):**
我使用 rvm 1.9.3 和 rails 3.2.13。
任何帮助表示赞赏。
提前致谢。
我在运行 rails 应用程序时收到此错误,这是完整的错误
ArgumentError(为 cookie 会话数据生成完整性哈希需要一个秘密。在 config/initializers/secret_token.rb 中使用 config.secret_token = "some secret phrase of at least 30 characters"):**
我使用 rvm 1.9.3 和 rails 3.2.13。
任何帮助表示赞赏。
提前致谢。
该消息非常简单明了。签入设置config/initializers/secret_token.rb
文件,config.secret_token
如果不存在则进行配置。
使用以下命令生成秘密令牌:
rake secret
它会回来
=> '3eb6db5a9026c547c72708438d496d942e976b252138db7e4e0ee5edd7539457d3ed0fa02ee5e7179420ce5290462018591adaf5f42adcf855da04877827def2'
然后编辑您的文件或创建新文件:
# config/initializers/secret_token.rb
# Be sure to restart your server when you modify this file.
# Your secret key for verifying the integrity of signed cookies.
# If you change this key, all old signed cookies will become invalid!
# Make sure the secret is at least 30 characters and all random,
# no regular words or you'll be exposed to dictionary attacks.
MyApp::Application.config.secret_token = '3eb6db5a9026c547c72708438d496d942e976b252138db7e4e0ee5edd7539457d3ed0fa02ee5e7179420ce5290462018591adaf5f42adcf855da04877827def2'
我在使用 figaro gem 来保密我的密钥时遇到了这个问题。
如果您将项目克隆到新位置,application.yml 将不存在。这是可取的行为,因为我们不希望更广泛的互联网能够检查我们所有的秘密信息。
如果这是你的问题。您将需要从原始位置复制 application.yml,或生成新密钥来替换那里的密钥。
是的。字符串是正确的:
config.secret_token = "..."
但是,对我来说 - 在我把这个字符串放入config/application.rb
文件后,redmine 可以飞起来。