我正在使用Rails 3.2.13并收到以下消息:
ArgumentError (A secret is required to generate an integrity hash for cookie session data. Use config.secret_token = "some secret phrase of at least 30 characters"in config/initializers/secret_token.rb):
我在this pull request和讨论here中找到了对此的引用。
我正在使用Devise(因此,Warden)并且讨论中的信息是相关的。我宁愿不破坏铁丝宝石 - 这里推荐的动作是什么?
由于
堆栈追踪:
Connecting to database specified by database.yml
Started GET "/" for 76.176.151.243 at 2013-07-20 12:34:25 -0700
ArgumentError (A secret is required to generate an integrity hash for cookie session data. Use config.secret_token = "some secret phrase of at least 30 characters"in config/initializers/secret_token.rb):
actionpack (3.2.13) lib/action_dispatch/middleware/cookies.rb:319:in `ensure_secret_secure'
actionpack (3.2.13) lib/action_dispatch/middleware/cookies.rb:284:in `initialize'
actionpack (3.2.13) lib/action_dispatch/middleware/cookies.rb:231:in `new'
actionpack (3.2.13) lib/action_dispatch/middleware/cookies.rb:231:in `signed'
actionpack (3.2.13) lib/action_dispatch/middleware/session/cookie_store.rb:50:in `block in unpacked_cookie_data'
actionpack (3.2.13) lib/action_dispatch/middleware/session/abstract_store.rb:57:in `stale_session_check!'
actionpack (3.2.13) lib/action_dispatch/middleware/session/cookie_store.rb:48:in `unpacked_cookie_data'
rack (1.4.5) lib/rack/session/cookie.rb:107:in `extract_session_id'
actionpack (3.2.13) lib/action_dispatch/middleware/session/abstract_store.rb:53:in `block in extract_session_id'
actionpack (3.2.13) lib/action_dispatch/middleware/session/abstract_store.rb:57:in `stale_session_check!'
actionpack (3.2.13) lib/action_dispatch/middleware/session/abstract_store.rb:53:in `extract_session_id'
rack (1.4.5) lib/rack/session/abstract/id.rb:43:in `load_session_id!'
rack (1.4.5) lib/rack/session/abstract/id.rb:32:in `[]'
rack (1.4.5) lib/rack/session/abstract/id.rb:267:in `current_session_id'
rack (1.4.5) lib/rack/session/abstract/id.rb:273:in `session_exists?'
rack (1.4.5) lib/rack/session/abstract/id.rb:107:in `exists?'
rack (1.4.5) lib/rack/session/abstract/id.rb:127:in `load_for_read!'
rack (1.4.5) lib/rack/session/abstract/id.rb:64:in `has_key?'
actionpack (3.2.13) lib/action_dispatch/middleware/flash.rb:258:in `ensure in call'
actionpack (3.2.13) lib/action_dispatch/middleware/flash.rb:259:in `call'
rack (1.4.5) lib/rack/session/abstract/id.rb:210:in `context'
rack (1.4.5) lib/rack/session/abstract/id.rb:205:in `call'
actionpack (3.2.13) lib/action_dispatch/middleware/cookies.rb:341:in `call'
activerecord (3.2.13) lib/active_record/query_cache.rb:64:in `call'
activerecord (3.2.13) lib/active_record/connection_adapters/abstract/connection_pool.rb:479:in `call'
actionpack (3.2.13) lib/action_dispatch/middleware/callbacks.rb:28:in `block in call'
activesupport (3.2.13) lib/active_support/callbacks.rb:405:in `_run__1076913542946280817__call__830910935667466127__callbacks'
activesupport (3.2.13) lib/active_support/callbacks.rb:405:in `__run_callback'
activesupport (3.2.13) lib/active_support/callbacks.rb:385:in `_run_call_callbacks'
activesupport (3.2.13) lib/active_support/callbacks.rb:81:in `run_callbacks'
actionpack (3.2.13) lib/action_dispatch/middleware/callbacks.rb:27:in `call'
rack (1.4.5) lib/rack/sendfile.rb:102:in `call'
actionpack (3.2.13) lib/action_dispatch/middleware/remote_ip.rb:31:in `call'
actionpack (3.2.13) lib/action_dispatch/middleware/debug_exceptions.rb:16:in `call'
actionpack (3.2.13) lib/action_dispatch/middleware/show_exceptions.rb:56:in `call'
railties (3.2.13) lib/rails/rack/logger.rb:32:in `call_app'
railties (3.2.13) lib/rails/rack/logger.rb:16:in `block in call'
activesupport (3.2.13) lib/active_support/tagged_logging.rb:22:in `tagged'
railties (3.2.13) lib/rails/rack/logger.rb:16:in `call'
actionpack (3.2.13) lib/action_dispatch/middleware/request_id.rb:22:in `call'
rack (1.4.5) lib/rack/methodoverride.rb:21:in `call'
rack (1.4.5) lib/rack/runtime.rb:17:in `call'
rack (1.4.5) lib/rack/lock.rb:15:in `call'
rack-cache (1.2) lib/rack/cache/context.rb:136:in `forward'
rack-cache (1.2) lib/rack/cache/context.rb:245:in `fetch'
rack-cache (1.2) lib/rack/cache/context.rb:185:in `lookup'
rack-cache (1.2) lib/rack/cache/context.rb:66:in `call!'
rack-cache (1.2) lib/rack/cache/context.rb:51:in `call'
railties (3.2.13) lib/rails/engine.rb:479:in `call'
railties (3.2.13) lib/rails/application.rb:223:in `call'
railties (3.2.13) lib/rails/railtie/configurable.rb:30:in `method_missing'
passenger (4.0.8) lib/phusion_passenger/rack/thread_handler_extension.rb:77:in `process_request'
passenger (4.0.8) lib/phusion_passenger/request_handler/thread_handler.rb:140:in `accept_and_process_next_request'
passenger (4.0.8) lib/phusion_passenger/request_handler/thread_handler.rb:108:in `main_loop'
passenger (4.0.8) lib/phusion_passenger/request_handler.rb:441:in `block (3 levels) in start_threads'
答案 0 :(得分:0)
在我的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.
Friendflat::Application.config.secret_token = 'asdf...'
您应该将相同的设置值添加到一些长的随机十六进制字符串中。