Movable Type でサブドメインを利用する場合の設定

Movable Type でサブドメインを利用する場合の設定

Posted at March 6,2008 2:02 AM
Tag:[CGIPath, MovableType, StaticWebPath]

インストールした Movable Type で複数のブログを作成し、各ブログに異なるドメインを設定した場合の対処方法です。
以前質問を頂いたので、情報展開しておきます。

結論から申し上げますと、mt-config.cgi のパスを変更する必要があります。

インストール後の mt-config.cgi の CGIPath(アプリケーションディレクトリを示す)と StaticWebPath(スタティックディレクトリを示す)のパスは、次のようなドキュメントルートからの記述になっています。

#======== REQUIRED SETTINGS ==========
 
CGIPath        /cgi-bin/mt/
StaticWebPath  /cgi-bin/mt/mt-static/

本来のドメインが

foo.com

である場合、mt.cgi のパスは

http://foo.com/cgi-bin/mt/mt.cgi

となりますが、サブドメイン sub.foo.com では、mt.cgi のパスを

http://sub.foo.com/cgi-bin/mt/mt.cgi

と認識してしまい、(サブドメインの物理パスはドメインと異なるため)CGI が正常に動作しません。これはドメインの部分に、ブログの「サイトパス」を結合しているのが原因です。

ということで、サブドメインなど、本来のドメインと異なるドメインから、正しいアプリケーションディレクトリやスタティックディレクトリを参照させるには、FTP ツールで mt-config.cgi をダウンロードして、CGIPath と StaticWebPath をそれぞれ、

CGIPath        http://foo.com/cgi-bin/mt/
StaticWebPath  http://foo.com/cgi-bin/mt/mt-static/

と、ドメインを加えた URL に書き直す必要があります。

実際に、ページに出力されて影響がある部分は、CGIPath については、いわゆるCGI(コメント・トラックバック・検索・XMLRPCなど)の起動部分や、mt.js が該当します。
StaticWebPath(mt-static)については、デフォルトテンプレートでは、クレジットバナーやフィードアイコンなどへの参照があるようです。

デフォルトテンプレートのテーマファイルの参照は、MTStaticWebPath タグが使われているので、この変更ですべて対処されると思ってますが、他にも適用箇所があるとか、プラグインとかで対処できるといった認識誤りがありましたらご指摘ください。スタイルを切り替えた場合に影響があります。

上記を含めた、サブドメインについての詳細は、「Movable Type 4.2 パーフェクトガイド」の7.1に解説しています。

Movable Type 4.2 パーフェクトガイドMovable Type 4.2 パーフェクトガイド
荒木 勇次郎

毎日コミュニケーションズ 2008-07-31
売り上げランキング : 1457

Amazonで詳しく見る
by G-Tools
関連記事
zenback
人気エントリー
トラックバックURL


トラックバック

サブドメインで Movable Type 4 を設定してみる(少しまとめ) from 「翻訳会社、やってます!」奮闘記 Part2
non さんから、Movable Type 4 をサブドメインで使用する設定について、ご質問をいただいたので、少しまとめてみました(それでも覚え書きレベル... [続きを読む]

Tracked on March 6, 2008 10:03 AM

サブドメイン from BONKURA BLOG
このブログのURLはサブドメインを使ってhttp://blog.bonkura... [続きを読む]

Tracked on July 7, 2008 5:32 PM

原因は・・・ from TEST Blog
やっぱりパスにありました。 簡単に説明しますね。   インストール後の... [続きを読む]

Tracked on February 26, 2009 11:50 PM
コメント

初めまして。

貴重な情報が満載なので、大変助かっております m(_ _)m。

MT をサブドメインで使用する場合、mt-config.cgi の修正の他に、styles.css へのリンクを絶対パスで指定しました(@import が読み込めないようでした)。

これでよかったのでしょうか。
ご教授いただければ幸いです。

[1] Posted by ishida : March 6, 2008 10:02 AM

>ishidaさん
こんにちは。
情報ありがとうございました。
まず、前提として、

<link rel="stylesheet" href="<$MTLink template="styles"$>" type="text/css" />

の、MTLinkタグに問題があるので、href属性を絶対パスに変更する必要がある、と理解しました。

MTの動作を確認してみたところ、サブドメインのブログのlink要素は、

<link rel="stylesheet" href="[http://サブドメイン/styles.css]" type="text/css" />

となり、サブドメインにはstyles.cssが出力されているので、この点については問題ないように思われます(ただし、元ドメインのスタイルを使いたい場合は変更する必要があります)。

また、styles.cssの内容は

/* Default Layout:  */
@import url(http://元ドメイン/mt-static/themes-base/blog.css);
@import url(http://元ドメイン/mt-static/themes/minimalist-red/screen.css);

となるので、個人的にはlink要素の変更は不要と感じました。
認識誤りがありましたら、ご指摘頂ければ幸いです。
それではよろしくお願い致します。

[2] Posted by yujiro logo : March 11, 2008 1:46 AM

初めまして。

 サブドメインで公開しようとしてうまくいかず、検索していたらこちらの記事をみつけました。

 実は、記載されているように設定を変更したのですが、うまくいかず、最終的には表示がおかしくなってしまいました。

 どうしていいのか分からず困ってコメントをしました。
 お忙しいところ大変恐縮ですが、お時間ができてからで構いません。
 どこを、どう直したらよいのか教えてくださいませ。


※サブブログ:http://tunagaru-goen.net/bridal/
 サブドメイン:http://bridal.tunagaru-goen.net

[3] Posted by akemi-k : November 25, 2009 2:46 PM

>akemi-kさん
こんばんは。
ご質問の件ですが、頂いた内容では、何がどのようにうまくいかないのかが分からないため、要望されている内容と、現在どのような不具合が発生しているかをお知らせください。
それではよろしくお願い致します。

[4] Posted by yujiro logo : December 1, 2009 1:06 AM

 お忙しい中ありがとうございます。
 実は、あれこれやっていて表示されなくなったり、うまくいったかと思えば、アーカイブをクリックしたらテンプレートを読み込んでいなかったりして、疲れてしまいました。

 そこで、新たなサブブログでも試してみたのですが、こちらは完全にテンプレートを読み込まなかったので、最終的には元に戻しました。

 せっかくお返事を頂きましたが、サブドメインを使わない方向でいこうと思いますので、どうかお赦しくださいませ。

 それから、Movable Type 4.2 パーフェクトガイドを購入して今日届きました。
 少しずつ勉強させていただきます。

 本当に、ご迷惑をおかけしました。


 

[5] Posted by akemi-k : December 1, 2009 10:16 PM

MT4.23-jaを使用しています。
サブドメインhttp://sub.domain.comでブログを作成しておりますが
うまく解決できない問題がありますので教えてください。
サブドメインxsub.domain.comでサイト内検索を行うと、
メインのドメインhttp://www.domain.com配下の
mt-search.cgiが使用され、URLもメインのドメインとなってしまいます。
各ページではjavascriptを使って、サブドメインsub.domain.comから
ファイルをダウンロードして、その一部を表示する機能(リンク)があり、
検索結果のページにも同様の機能を使いたいのですが、
メインのドメインからはサブドメインのファイルを
ダウンロードして表示することができないようです。
(セキュリティ上、javascriptで他のドメインのファイルを操作できないらしい?)

サブドメインの配下にmt-search.cgiを作成して
使用できればよいような気がするのですが、
そのようなことは可能でしょうか。
またはその他の解決方法があるのでしょうか。
教えていただけないでしょうか。

[6] Posted by よよよ : September 16, 2010 10:27 AM
コメントする
greeting

*必須

*必須(非表示)


ご質問のコメントの回答については、内容あるいは多忙の場合、1週間以上かかる場合があります。また、すべてのご質問にはお答えできない可能性があります。予めご了承ください。

太字イタリックアンダーラインハイパーリンク引用
[サインインしない場合はここにCAPTCHAを表示します]

コメント投稿後にScript Errorや500エラーが表示された場合は、すぐに再送信せず、ブラウザの「戻る」ボタンで一旦エントリーのページに戻り(プレビュー画面で投稿した場合は、投稿内容をマウスコピーしてからエントリーのページに戻り)、ブラウザをリロードして投稿コメントが反映されていることを確認してください。

コメント欄に(X)HTMLタグやMTタグを記述される場合、「<」は「&lt;」、「>」は「&gt;」と入力してください。例えば「<$MTBlogURL$>」は「&lt;$MTBlogURL$&gt;」となります(全て半角文字)