デプロイ後にユーザ情報を取得する画面(/users)に
アクセスしたところ、500エラー画面が表示されてしまいました。
ログには目立ったメッセージは出力されていません。
今回はこのエラーへの対応を記述します。
まずは500エラーとなっている原因がログに出力されなければ話になりません。
Railsの細かい挙動はまだ理解しきれてないので、
開発(development)と同じようにログを出力させようということで、
#cd config/environments/
#cp production.rb production.rb.org
#cp development.rb production.rb
#dotcloud push kazoku
と本番設定を開発設定で上書いちゃいましょう。(もちろんバックアップは取ったうえで、ね)
dotcloudにpushして確認すると、JavaScript Runtimeが見つからないというエラーが。
ググったら同じところで躓いた人たちと解決方法を発見。
http://d.hatena.ne.jp/tetsuyai/20110920/1316487020
Gemfileに以下のGemを読み込ませるようにしたところ、
無事解決いたしました。
gem 'execjs'
gem 'therubyracer'
サーバサイドJavaScriptのRuntimeが必要なんですねー。
え、なんで?って思いますが、とりあえずエラーが解決できてよかった。
Railsでは'execjs'と'therubyracer'を必ず読み込むこと。
これ鉄則ですねー。(最初からGemfileに書いておいてくれればいいのに。。)
p.s. 上書きしちゃったproduction.rbは後で前のに直しておきましたとさ。