あるときからこのMTで、TypeKeyの認証をして戻ってきたら「The validation failed」というエラーが出て認証に失敗してコメントができなくなっていたので、それについてずっと調べていたがやっと原因がわかった。 ネットでこの問題を検索してみると、いろいろな場合があって、主に下記のようなことが原因なのが多い。 1 MTのバージョンに依存した問題  lib/MT/Utils.pmのdsa_varifyの1275行目付近のif文で  if ($has_crypt_dsa && 0) {  となっている「&& 0」を取ると直る 2 個別アーカイブのテンプレートで、typekeyへ飛ばすURLで、v=1.1というのがある/ないの問題 3 lib/MT/Utils.pmのperl_sha1_digestが上手くいかない問題 4 lib/MT/App/Comments.pmの$SIG_WINDOWの値が短かすぎる(デフォルト10分)問題 などがあるらしく、どれか一つにあてはまるとコケたりするらしい。 んで、このブログがなににあてはまったかというと、上記でいう4に近い感じでした。いろいろと変数をえんやこらとダンプしてデバッグしたところ、このTypeKeyの認証は時間を測ってある一定時間内(これが10分)に認証処理が完了しないとエラーを出す仕様になっているらしく、それを判定する基準となるサーバの時計がズレているために問題が起っていた様です…。なので、ntpdをちゃんと設定したらあっさりTypeKeyで認証できました。 意外なところに落とし穴があった…。 ちなみにMTはwarnを使ってデバッグをすると画面にその文字列がでるのだが、それがいやな場合にはMT::log()という関数があるので、それを使えば管理画面のトップページからリンクされているログを参照するページでその出力を参照することができます。って言わずもがな、かな…。