Movable Type でサブドメインを利用する場合の設定
インストールした 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 でテンプレート編集画面の内容が途中から消失する問題の対処
- Windows XP のローカルサーバ環境(ジャンクション利用)への Movable Type 4.1 のインストールで「mt-staticがみつかりません」という警告が表示される場合の対処
- Movable Type 4.1 でコメント投稿者情報が保存されない不具合について
- 「月別アーカイブリスト」が月別アーカイブで正常に表示されない不具合について
- Movable Type 4.0x でブログ記事へのリンクが post.html になる/ブログ記事のプレビューができない不具合について
- テンプレートの再構築で「モジュールというテンプレートが見つかりませんでした」というエラーになる場合の対処
- Movable Type 4 の管理画面で詳細メッセージのないエラーが発生する不具合について
- Movable Type 4 のデフォルトテンプレートで @import が表示される問題
- 検索結果のページ分割(3.3x 版)
- Movable Type でコメント投稿・トラックバックが重くなる事象を解消する
- HTTP/1.1 の「条件付きGET」を利用して PHP ファイルアクセスによるサーバ負荷を削減する
- MTEntries タグの lastn 属性と sort_order 属性(ascend)の同時指定が有効にならない件について
- Movable Type 3.x デフォルト・テンプレートのAtomフィードの不具合について
- Movable Type 3.3 で TypeKey サイン・イン時の JavaScript エラーを解消する
- カテゴリーリストで MTArchiveListHeader と MTArchiveListFooter が正常に動作しない問題
- Movable Type 3.2 と 3.31 におけるサブカテゴリーリストの表示の違いについて
- Movable Type 3.3 の再構築で「<MTTagName>タグが閉じられていません」になる問題の対処(改)
- Movable Type の検索でエラーになる問題について
- コメント・プレビューで実体参照が無効になる不具合を解消する
≫ サブドメインで Movable Type 4 を設定してみる(少しまとめ) from 「翻訳会社、やってます!」奮闘記 Part2
non さんから、Movable Type 4 をサブドメインで使用する設定について、ご質問をいただいたので、少しまとめてみました(それでも覚え書きレベル... [続きを読む]
初めまして。
貴重な情報が満載なので、大変助かっております m(_ _)m。
MT をサブドメインで使用する場合、mt-config.cgi の修正の他に、styles.css へのリンクを絶対パスで指定しました(@import が読み込めないようでした)。
これでよかったのでしょうか。
ご教授いただければ幸いです。
>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要素の変更は不要と感じました。
認識誤りがありましたら、ご指摘頂ければ幸いです。
それではよろしくお願い致します。

