TIPSに書こうかと思ったんですが、もう面倒臭くて気力がなくなりました orz
某知人に頼まれて、ブログでMovableType(MT)を使いたいというのでMySQLの登録をしようとしたんですが、ユーザーとデータベースを登録したところまでは良かったものの、試しにインストールしたMT4でいわゆる「5C問題」が発生していることに気づいて、仕事そっちのけで丸一日調整するハメに……。
最初はMT4のコードを疑ったんですが、書き込まれた文字列以外はちゃんと表示されていることに気づいてMySQLを調べることにしました。
どうやらMySQL5は文字コードの自動変換を持っているようなので/etc/my.cnfに『skip-character-set-client-handshake』を付けてみたりしましたが改善せず。
とにかく原因がMySQLにあることだけははっきりさせたかったので、データベースをDBD:Sqliteに変えて試したところ……MT4が(正確にはMT4から呼び出されるPerlが)コアダンプを吐きやがるわけです(涙目
DBD:Sqlite2でもコアダンプを吐くので、これで動かなくなるスクリプトがでても責任はとらん!(笑)と思い余ってperlもVer5.10.0にバージョンアップ。
しかし相変わらずコアダンプ……。むぬぬ。
仕方ないのでMT3をインストールして試すと、SqliteはNGながらSqlite2だとコアダンプを吐かないで通る!
で、文字化けは……ないのです。
BerkleyDBでも文字化けせず。
さてMySQLはというと……うは、5Cキタコレ(笑)
ってことはMySQLが原因なのは確定なので、どうするかアレコレ弄った末、default-charcter-setをsjisにして、mysqldはutf8にするという良く判らない文字コードで化けなくなりました。
ここまでたどり着くのに8時間以上……。なにやってるんだか('A`)アホッポイゾ
しかし久しぶりに弄ったMTはえらく性能が上がっている反面、システム用件が多すぎて自鯖以外だと辛くないかなぁ……?
でも「MT4がインストールできるよ!」というのがレンタル鯖の売りなのか。
オンラインドキュメントのインストールガイドに「ロリポップ!」と「さくらインターネット」と名指しされているところを見ると、そうなんだろうね(´Д `;)
生のperl CGIは重いからイヤなのだ……。 |