Movable Type 4 へのアップグレードとサーバ移転、タイミング悪く4.0→4.01へのアップデートも入ってきたりして、さんざんな段取りでやってますが、今回はトラックバックを独自ドメインのURLにするためにひとがんばりした話です。
ここで利用しているレンタルサーバXREAと連携するドメイン取得サービスのVALUE DOMAINでは、ひとつのサーバアカウントで複数の独自ドメインの運用ができます。
Movable Type は最近のライセンスでは個人アカウントでもユーザ数無制限、ブログ数無制限になっていて、ドメインでの制約もないので、複数のドメインを利用して複数のブログを運用することが可能です。
私自身はひとつのドメインしか運用していないのですが、いつか複数設定するかも~~とわざわざそんな設定にして、さらにサブドメインの設定もしてみました。どうでもいいことですが、9/27現在、blog.studio-fu.comは新サーバ、www.studio-fu.comは旧サーバにあります
別のドメインにブログを出力することは、mt.cgiが存在するドメインでのURLとパス、ブログを公開するURLと公開ファイルの存在するパスの関係が理解できていたら簡単です。課題は、cgiのURLが公開しているURLとは異なるドメインにあることが、このブログから見えてしまうこと。目立つのはトラックバックURLです。
ここの場合なら
http://blog.studio-fu.com/mt/mt-tb.cgi/***
となってほしいのに、
http://アカウント名.サーバ名.xrea.com/mt/mt-tb.cgi/***
となってしまっているのです。
動作に問題はないのですが、アクセスした一般のユーザからしてみると、ほんとにトラックバック先がこれでいいのかちょっと心配になる人もいそうです。
まずは安易に.haccessでのリダイレクトをしてみました。わざわざ独自ドメインのmt-tb.cgiのURLが生成されるよう
<$MTBlogURL$>mt/<$MTTrackbackScript$>/<$MTEntryTrackbackID$>
とか書いて独自ドメインのトラックバックURLらしきものでテンプレートを修正。リダイレクトされれば、対応するトラックバックURLで受信してくれると期待したのですが、トラックバックはエラーに終わります。送信元の方には受信先が返してくるステータスコードをログがのこります。
少し調べたところ、mt-config.cgiのCGIPathをホスト名を省略した形で書くと、TB先URLが独自ドメインのもので展開されること、独自ドメイン配下に実際のMTディレクトリへのシンボリックリンクを作っておけば、トラックバックが独自ドメインのURLで受信できるということがわかりました。テンプレートの修正は全く必要ないと言うことです。
この方法で、XREAでうまくいったと報告されている情報もみつかりました。
複数ブログのトラックバックURLを、ブログごとの独自ドメインで公開する方法 - blog.aklaswad.com
Movable Type の 3.3 以降のバージョンでは、CGIPathのホスト名を省略することで、各ブログのブログURLのホスト名部分をもとにしたリンクをCGIPathとして出力させることが可能となっています。この機能を利用して、作成したブログをあたらしい独自ドメインで公開する際に、トラックバックURLなどをその独自ドメイン以下のURLとして公開することが出来ます。
ただし一つ条件があって、独自ドメインで公開する際のCGIのURLと、本来のCGIのURLが、ホスト名以下の部分で一致している必要があります。これをクリアするためにはいくつかの方法があるかと思いますが、自分が使っているXREAさんで、シンボリックリンクを使った設定が上手く行ったので紹介します。
これでMovable TypeのCGIをおいているドメインとは異なる独自ドメインのトラックバックURLでトラックバックを受信することができるようになりました。
が、このあと謎の現象が発生!!
・独自ドメインのURLで管理画面にアクセスすると、エントリーの本文が表示されない。タイトルはあるのに。
・テンプレートは表示できるのですが、リードオンリーの状態になっていて編集できない
・ダッシュボードで「デザイン」→「ウィジェットセット」をクリックしたらエラーになる。
いずれもxrea.comのほうで実際にインストールしているURLで管理画面にアクセスした場合は正常です。
しばらくエントリーの投稿などはインストールしたURLの方でいろんな作業したのですが、いつの間にか独自ドメインの管理画面URLでも正常になっていました。。正常になったタイミングは不明です。その後、MT 4.0に戻してみても正常なままですし、直ったきっかけがわかりません。
解せないまま使っているというのが、今の状況。今のところは気になるところはありません。