Linux(Debian)上でRailsを動かす

しかも、ソースはEUC-JP。一日半の試行錯誤の末、とりあえず動くようにはなった。
GetTextで国際化している場合、以下のようにする。

  1. プロジェクト内のテキストファイルはすべてEUC-JPに変換
  2. $KODE='u'→$KCODE='e'に書き換え
  3. app/controllers/application.rbで、init_gettext("project_name","EUC-JP")とする
  4. poファイル内で、charsetを指定しているところで、"utf-8"を"EUC-JP"に書き換え

さらに、UTF-8のときは全く問題にならなかったMySQLの設定が問題になった。
UTF-8の場合、

で問題ないのに、EUC-JPで、

とすると、なぜか文字化けが起こる。
これは、いろいろ調べたところ、どうにもならないらしい。(MySQLの仕様?)
しかし、実は回避策(裏技)はある。
それは、MySQLで、

  • Latin1(latin1_general_ci)

に設定する方法で、phpMyAdminの場合、
top画面のMySQL 接続照合順序で、
latin1_general_ci
を選択する。
さらにデータベースと、テーブルでも同様に照合順序で、
latin1_general_ci
を選択すればOK。
ヤレヤレと思ったら今度はDebianのapt-getとRubyGemで、
競合が起こるらしいことがわかって、Railsが動くようになったが、
なるべくdpkgで入れるべきか、gemをメインにするかで、悩みつつ現在に至る。