かねてから私を悩ませていた文字化け問題だが、どうやらギブアップが近いのかもしれない。
どんな文字化けかというと、
の
が、ことごとく「?」に化けてしまうのである。
上のふたつはしょうがないのでjpg画像にした。
webで探し出した対策として
1.ブログ記事をエクスポート(バックアップ)
2.データベースの文字コードをUTF-8に変更。
※私のサイトではMySQLを使用しているので、デフォルトではEUCだった。
3.「1.」でエクスポートしたファイル(中身はtext)をUTF-8で保存し直す。
※ファイルの中の記述で、ujisやujis-binがあり、これをutf8とutf8_general_ciに変更、とあったが
検索しても見つからなかった。
4.ブログ記事をインポートで戻す。
というものがあったが、ダメだった。
DBはUTF8に変更した。
確かに、初回の記事投稿のみ
が化けなかった。
が、サイトを再構築したら「?」に化けた。
また、インポートする際は、一度すべての記事を削除してからやらないと、全ての記事が二つづつ投稿されてしまう(上書きされない)
これは、現在運転中のブログ記事を一度すべて削除するというのは、実にスリリングな操作だ。
しかし、ダメだった。
いささかアタマにきて、DBを別ユーザーでもうひとつ用意し、あらかじめこれの文字コードをUTF-8にしておいて、全く新規にMovable Type(4.25)をインストールしたら、化けなくなった。
そこまでやらなきゃ文字化け問題は解決できない!
ちなみに、この新しいMT4.2に旧来の記事をエクスポートして文字コードをUTF8に変換し、ついでにファイル中にujisやeucが無いことを確認してインポートしても、やはり新規のコメント投稿や記事作成、サイト再構築後は「?」化けが現れた。
結論。
文字化けがイヤなら、MT4.2を導入する際、あらかじめDBをUTF8にしてからインストールすべし。
意外と気難しいな。Movable Typeは。
※2009/6/14:注
この記事を投稿時は旧MovableTypeで文字化けが起こっていました
MTはVer4.2、DBがEUCだったためです。
現在、MTは同じ4.2ですが、DBをUTF8にしてあり、文字化けは解消しています。
壱号











コメントする