Rails1.2.6のアプリケーションをRails2.0にしたら500 Internal Server Error

ログを見ると、

Status: 500 Internal Server Error
  A secret is required to generate an integrity hash for cookie session data. Use config.action_controller.session = { :session_key => "_myapp_session", :secret => "some secret phrase of at least 30 characters" } in config/environment.rb

ログメッセージにある通り、config/environment.rbのRails::Initializer.runのブロックに以下を追加したら、解決。

Rails::Initializer.run do |config|
  # ...
  # Your secret key for verifying cookie session data integrity.
  # If you change this key, all old sessions 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.
  config.action_controller.session = {
    :session_key => '_myproject_session',
    :secret      => '5db14bae2952695dca65b3c176a134d100a5066aa0a31d3af680f39f40fe03fa986c024836158c2ae6e8b4a8036de938fdbc072909d1bf88505c96a8270c7cc7'
  }
  # ... 以下略
end

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください