兄上より依頼を受け、XREAでMovable Typeを設置する機会があったのですが、その際に「トラックバックURL」の表示でつまづいたところがあったのでメモしときます。
設置先のサイトでは独自ドメイン(仮にwww.example.comとします)で運用されていたのですが、MTを設置したところトラックバックURLが http://www.example.com/dir/mt-tb.cgi/XXX という風にならず、 http://ID.sXX.xrea.com/dir/mt-tb.cgi/XXX と、XREAのサーバ名が入ったURLになっていました。
で、MTの設定周りを見たところ、ウェブログの設定の中にサイトのURLという、基準となるURLを設定する箇所があり、これが初期値で http://ID.sXX.xrea.com/dir/ となってたので、これを http://www.example.com/dir/ に変えて再構築してみました。しかしながらそれでもトラックバックURLは http://ID.sXX.xrea.com/dir/mt-tb.cgi/XXX のまま変わらずでした。
テンプレート・タグの説明を見ると、トラックバックURLは MTEntryTrackbackLink というタグに反映されるようなのですが、どうもこのタグには「サイトのURL」の設定が反映されない様子。だとすると別のタグを組み合わせたりとかしないと駄目だろうか(しかしそれは大変そうだなあ)、とか思いつつ一旦出先から帰宅の途についたのですが、その途中で「そう言えばMTの設定にはmt.cfgというファイルもあったな」ということを思い出しました。家に着いてからサイトのmt.cfgを見てみたところ、
CGIPath http://ID.sXX.xrea.com/dir/
という行がありました。これを、
CGIPath http://www.example.com/dir/
と変更して再構築すると、ようやく意図通りのトラックバックURLを表示することができました。
CGIPathの説明を読むと、
Movable Typeは、CGIPathとAdminCGIPathの設定値を使ってMovable TypeのCGIスクリプトへのリンクを生成します。 たとえば、Movable Typeのタグ
<$MTCGIPath$>
はCGIPath の設定値に置き換えられます。
とあり、言われてみれば、CGIのパスと記事ページを置くディレクトリは同じになるとは限らないわけで、設定が別になっているのにも納得。
XREAでは、XREA SUPPORT BOARD - Movable Typeの設置方法についてに、MTを簡単にインストールするためのスクリプトが公開されているのですが、改めてスクリプトを見てみると、独自ドメインで運用する場合のことが考慮されていないようでした。独自ドメインにも対応したインストールスクリプトを用意するとか、独自ドメインを使う場合はmt.cfgのCGIPathを変更する必要がある旨を案内されていたりすると、利用者にとって有難いような気がします。