xserver~自宅サーバー構築、Movable Typeのカスタマイズ、Linux、ブログなどについて解説していきます~

サイトロゴ
ウイルスセキュリティ(468×60)
HOME > Movable Type > カスタマイズ > 第32回:.htaccess に...
Movable Type
RSS Atom

Movable Type のカスタマイズ関連について扱っていきます。

第32回:.htaccess によるURL転送(リダイレクト)

第31回では、携帯端末とパソコンの振り分け方法について説明しました。今回は、カテゴリー名の変更、ドメイン名の変更などに伴うURLの変更時に、リダイレクト元サイトからリダイレクト先サイトへURLを転送させる方法について説明します。リダイレクトをするには、httpd.conf .htaccess にその転送内容を記述しますが、ここでは、.htaccess を使ったURL転送について説明していきます。

Movable Type でカテゴリーを作成するとき、事前にある程度考えてからカテゴリーを作成していきますが、それでも、コンテンツが増えてくるにしたがって、「カテゴリーを細分化させたい」、「カテゴリーを一階層上に移動させたい」、というケースが少なからずでてくるかと思います。その場合、面倒な問題となるのがURLの変更ですが、リダイレクトを利用すれば、訪問者にURLの変更を意識させることなく、変更先URLへと簡単に導くことができるようになります。

リダイレクトには、永久的なリダイレクト(301 permanent)と
一時的なリダイレクト(302 temporary)の2種類があり、恒久的にURLを変更したい場合には、
301ステータスコード(301 Moved permanently )を返すようにします。

301リダイレクトをすることで、YahooやGoogleの検索データベースに登録された旧URLアドレスも、約2~3週間程度で新URLアドレスに変更されます。また、Googleのページランクも継承できるようになります。但し、この.htaccessのようなサーバーサイドリダイレクトを用いたURL転送にはその有用性に諸説あるようで、新旧の情報が入り混じっていてどの情報が正しいのか個人的には判断いたしかねますので、100%ページランクが継承されるとは保証いたしかねます(笑)。あくまで自己責任において行ってください。因みに、私個人の経験としては、以下で説明する方法で何の問題もなく正常にリダイレクトを行う事ができましたので参考までに。

もっとも慎重にURLの変更を行うのであれば、リダイレクトは一切使用せずに、全てのページに対して手動でリンク変更の旨を記載し、新しいアドレスへのリンクを貼っておくことです。こうすることで、Googleは、他のウェブ ページからのリンクをたどってサイトを発見することができるようになり、表示順位なども維持する事ができます。詳しくは、以下に記したGoogleのリンクを参考にしてください。

■参考:Google
URL を変更したのですが、どうすれば Google で登録されますか。

■参考:Yahoo!Japan
リダイレクトを設定している場合、どちらのURLがデータベースに登録されますか?


リダイレクトの書式は、以下の通りです。

Redirect permanent [ リダイレクト元] [ リダイレクト先]

まず、.htaccess を生成します。MT管理画面から「テンプレート」→「新規テンプレートの作成」で新規にテンプレートを作成します。出力ファイル名には「htaccess」と記述します。

「.htaccess」というファイル名にしてしまうと、再構築すると即座に .htaccess が機能してしまうので、最初はテスト用に「htaccess」という名前にしておき、問題がなくなったら最後に「.htaccess」にリネームするようにしましょう。きっと一発で完璧な .htaccess が生成されることはほとんどないからです。自分の環境にあわせて試行錯誤しながら「テンプレートの内容」を変更しましょう。オレンジ色で記した箇所は、特に各自の環境によって変わってきます。

テンプレート名:htaccess
出力ファイル名:htaccess
テンプレートの内容

Redirect permanent <$MTBlogURL relative_url="1"$>index.php <$MTBlogURL$>


<MTEntries lastn="0">
Redirect permanent <$MTEntryPermalink relative_url="1"$> <$MTBlogArchiveURL$><$MTArchiveDate format="%Y/%m/%d/%H%M"$>.php
</MTEntries>


<MTArchiveList archive_type="Monthly">
Redirect permanent <$MTArchiveLink relative_url="1"$> <$MTArchiveLink redirect_php="1"$>
</MTArchiveList>


<MTArchiveList archive_type="Category">
Redirect permanent <$MTArchiveLink relative_url="1"$> <$MTArchiveLink redirect_php="1"$>
</MTArchiveList>

このテンプレートを保存・再構築すると、ブログディレクトリに 「htaccess」 という名前でファイルが生成されています。ファイルを開くと、大方以下のようになっています(※一行で見やすくするため、若干、簡略化してあります)。

Redirect permanent /blog/ http://~/weblog/


Redirect permanent /blog/~/0530.php http://~/weblog/0530.php
Redirect permanent /blog/~/0304.php http://~/weblog/0304.php
・・・
・・・


Redirect permanent /blog/2006/04/ http://~/weblog/2006/04/
Redirect permanent /blog/2006/03/ http://~/weblog/2006/03/
・・・
・・・


Redirect permanent /05diary/news/ http://~/weblog/05diary/news/
Redirect permanent /05diary/diary/ http://~/weblog/05diary/diary/
・・・
・・・

もし、自分の意図する内容と全く異なるりダイレクト結果が出力されたならば、「テンプレートの内容」を各自の環境に合わせて編集し、再度、再構築を行いましょう。なお、日別アーカイブや、週別アーカイブがある方は、以下のソースも追記し、再構築しておきましょう。

<MTArchiveList archive_type="Daily">
Redirect permanent <$MTArchiveLink relative_url="1"$> <$MTArchiveLink redirect_php="1"$>
</MTArchiveList>


<MTArchiveList archive_type="Weekly">
Redirect permanent <$MTArchiveLink relative_url="1"$> <$MTArchiveLink redirect_php="1"$>
</MTArchiveList>

以上、.htaccess によるURL転送は終了です。何度か試行錯誤しながら、自分の環境にあう .htaccess を生成するようにしましょう。きっと、手動で .htaccess を作成するよりもはるかに短い時間で、しかも、デッドリンクのない 完璧な .htaccess を生成する事ができるでしょう。

最後に、当記事は、以下の本を参考にさせて頂きました。
ブログ簡単パワーアップ Movable Type スーパーカスタマイズテクニック

参考になりましたらポチっとお願いします♪

トラックバック

このエントリーのトラックバックURL:


コメントを投稿

ブログをやるなら
ブログランキング

スポンサードリンク
私が読んだ書籍
ブログ簡単パワーアップ Movable Type スーパーカスタマイズテクニック
カスタマイズ中心の書籍。すでにMTを触っている方にオススメ。どこからでも気軽に読めるのがGOODです。MT本の中でも特にお勧めの一冊。

Movable Type標準ハンドブック Movable Typeで今すぐできるウェブログ入門 改訂版
標準ハンドブックの名に相応しいMT入門本。インストールから基本設定、簡易なカスタマイズまで網羅。白黒ですが、デザインがすっきりしていて読み易いです。

Movable Typeでつくる!最強のブログサイト
入門編から基本設定、3カラムデザインへの変更、スタイルシートの説明、カスタマイズ応用編など広い範囲で網羅しています。370p とボリューム感も。

Movable Typeスタイル&コンテンツデザインガイド―コンテンツ管理システム(CMS)ツールとしてのMovable Type活用術&実践サイトデザイン術
MTをCMSツールとして活用するための仕組みや特徴を解説。前半のタグリファレンスは便利。後半のデザイン例は、オリジナルなデザインが作れる方なら不要です。初心者にはやや不向き。