Apache Rewrite 学習 : 番外編 ブログやホームページの引越しに対応する

投稿者 : OSCA

[PR] 関東地方の美しい夜景を観にいこう。 夜景サイト「夜景散歩」で夜景スポットを検索

ブログやホームページを別のサーバーに引越しした際にやっておきたいのが、旧サイトから新サイトへの誘導/転送です。 この誘導/転送ですが Apache Rewrite で転送を行うとても重要な理由があります。 本稿では、Apache Rewrite を利用して旧サイトから新サイトに転送することの理由と設定について説明します。

「引っ越しました」と書くだけの引越し案内はNG!

ブログやホームページを引っ越した際に、旧サイトへ訪れた人向けに「このホームページは http://new.homepage.co.jp/ に引っ越しました」と新しいホームページへのリンクを書く対応をすることがあると思いますが、その対応はあまりオススメできません。

たとえば、あなたの運用していた旧ホームページはとても人気があり、検索エンジンにも「人気があるホームページだ」と解釈されてページランクが高かったとします。 しかし新しく引っ越した先のホームページは出来たてで実績がありません。 この場合、引っ越してしまったことであなたのホームページはページランクが一気に下がってしまうことになるのです。

HTTPステータス 301 で転送するようにしよう

話しは変わりますが HTTP のステータスコードに 301 というコードがあります。 301 は「恒久的移動」を意味するステータスコードです。 つまり「あなたの開いたページは移動しちゃったよ」という事を教えてくれるのです。

どうやら Google ではこの HTTP ステータスを汲み取ってくれるみたいです。 なんとホームページが引越しされたことを汲み取ってくれて、しっかりと新しいホームページを認識し、且つページランクを引き継いでくれるのです。

ですのでオススメしたいのは、ブログやホームページを引っ越したら、旧ホームページで Apache Rewrite の設定を行い HTTP ステータス 301 でアクセスを新ホームページへ転送させることです。

引越しの際の設定例

設定は面倒でもしっかりとページ毎に旧ページから新ページに転送されるように設定しましょう。

旧ホームページと新ホームページとでドメインしか違わないのであれば次のに設定すれば良いでしょう。 (本連載の第02回の学習内容ですね)

RewriteRule ^/(.*)$ http://new.homepage.co.jp/$1 [R=301,L]

残念ながら旧ページと新ページのURLの構成が全く違うのであれば、地道にページ毎に設定をしていくしかないですね。 しかしページランクを落とさないためにも辛抱です。 (本連載の第01回の学習内容ですね)

RewriteRule ^/page1.html$ http://new.homepage.co.jp/new-p1.html [R=301,L]
RewriteRule ^/page2.html$ http://new.homepage.co.jp/new-p2.html [R=301,L]

おわりに

ホームページの移転作業はとても面倒な作業です。 新しいサーバーを構築してファイルを移転して・・・と苦痛な作業でついページランクの事など忘れてしまうかもしれません。 せっかく苦労して移転してもアクセスが減ってしてしまっては意味がありませんので、くれぐれもページランクを落とさないように気をつけたいですね。

Apacheのトップへ戻る

著者 : OSCA

OSCA

Java, PHP 系のWEBエンジニア。 WEBエンジニア向けコミュニティ「WEBエンジニア勉強会」を主催。 個人として何か一つでも世の中の多くの人に使ってもらえるものを作ろうと日々奮闘中。
@engineer_osca