※ 301リダイレクトはサイトの恒久的な移転に利用するもので、検索エンジンのインデックス上のURLは新しいものに更新されますが、302リダイレクトでは一時的なサイトの移転であり、検索エンジンのインデックスは旧サイトのまま、更新されることはありません。。
.htaccess とは、サーバー動作を設定するためのファイルで、.htaccess の「RedirectPermanent」ディレクティブを利用します。
RedirectPermanent を使うと、旧サイトへアクセスしてきたクライアント(訪問者やクローラ)に対して http status コード301 を返し、指定した新サイトのURLへリダイレクトを行ないます。
httpステータスコード301 とは「URLを変更したので、新しいURLへアクセスしてください」と、.htaccess ファイルを配置したサーバー上のディレクトリ下への全てのアクセスへ答えるものです。
その結果、旧サイトへの訪問者やクローラからのアクセスは、指定された新サイトへ自動的に転送され、新サイトがアクセスされるようになります。
● .htaccess ファイルの記述
.htaccessファイルの記述例(301リダイレクト)
redirect 301  旧サイトのURLからドメインを除く部分  新サイトのURL
|
"redirect 301" の後ろへ半角ブランクを挟んで、旧サイトの絶対URLから "http://ドメイン名" を除いた部分を置き、更に半角ブランクを挟んで、転送先の新サイトURLを記述し改行します。
● .htaccess ファイルの内容例
@ http://old.popdom.jp/ → http://new.popdom.jp/ の場合
redirect 301 / http://new.popdom.jp/
|
A http://old.popdom.jp/~old/ → http://new.popdom.jp/~new/ の場合
redirect 301 /~old/ http://new.popdom.jp/~new/
|
B http://old.popdom.jp/~old/index.html → http://new.popdom.jp/~new/ の場合
redirect 301 /~old/index.html http://new.popdom.jp/~new/
|
.htaccess によるリダイレクトでは、旧サイトのファイル名を指定しない限り、旧サイトへのアクセスは、そのリクエストのディレクトリ構成を保ったまま、新サイトへリダイレクトされます。
.htaccess という、一見すると拡張子のみから成るファイルを、Windows環境で一般的なテキストエディターを使って作成する事はできません。
その場合は、 dumy.htaccess のように仮のファイル名を与えて作成し、FTPソフトを使って旧サイト・サーバー上のリダイレクトを行うディレクトリへアップロードし、FTPソフトからサーバー上の同ファイルの名前を変更し、 .htaccess というファイル名にします。
サーバーによっては、.htaccess を利用できない場合もあります、詳細はご利用中のサーバー提供会社で確認して下さい。
旧サイト上へ新サイトへの移転告知ページを配置し、METAリフレッシュタグにより新サイトURLへリダイレクトします。
(1)旧サイトの、全てのコンテンツをサーバーから除去。(又はアクセス不能とする)

旧サイトのコンテンツを残したまま、旧サイトのコンテンツを新サイトへそのまま移した場合、2つのサイトに同じコンテンツが存在する為に、検索エンジンから見た場合にスパム行為と判断されたり、入力フォームがある場合であれば、新サイトがフィッシングサイトと見なされる恐れがある。
したがって、新サイトへ移転した事を明確に検索エンジンへ示す為にも、旧サイトのコンテンツを除去し、検索エンジンのインデックス上から旧サイトの情報を消す必要がある。
( 右図は当サイトでも一時的に発生した、Googleによるフィッシングサイトの警告メッセージ)
(2)旧サイトへ、移転告知ページを配置。
移転告知ページの作り方は、概ね以下のとおりです。
@.新サイトのURLをハイパーリンクとして掲示し、新サイトのURLを知らせる。
A.METAリフレッシュタグで、訪問者に対して旧サイトから新サイトへ自動的に誘導すると同時に、検索エンジンのクローラに対して、サイトの移転を知らせる。
移転告知ページのHTMLソース例
<html>
<head>
<meta http-equiv="Refresh" content="0;URL=http://新サイトのURL">
</head>
<body>
このサイトは次のURLに移転しました。<br>
<a href="http://新サイトのURL">http://新サイトのURL</a><br>
新URLへ移動します。<br>
</body>
</html>
|
ここで注意すべきは、METAリフレッシュタグによるリダイレクトでは、即時にリダイレクトするように設定している場合は 301、リダイレクト開始まで一定の時間を設定している場合は 302、として扱われる事です。「
Yahoo サイト管理者向けヘルプ」
したがって、METAリフレッシュタグの content 属性に指定する時間(秒数)には必ず 0 を指定する必要があります。
旧サイトの転送を行いたい位置へ移転告知ページを配置する他、必要に応じ各コンテンツ位置へも、そのコンテンツと対応するURL記述で、移転告知ページを配置します。