ログを見るとInvalidByteSequenceErrorなんてのが出ている様子。
えーと、マジックコメントとやらでエンコーディングを指定してやればいいの?
...
だめ。ターミナルでは動くようになったけど、cgiとして動作させるとやっぱりJSONファイル読み込むところでコケてしまう。
どうやら外部ファイルのエンコーディング指定には別の方法が必要な様子。
スクリプト冒頭付近に
Encoding.default_external = "UTF-8"を書き込んでおくといいみたい。
…1.9.3だと一応これで動くんだけど、もしかしてこれって1.9.1では動かなかったりするのかな?
日本語対応地味に面倒くさいです。