ドメインの引越しや一部のURLが変更になった際に利用する「301 Redirect(サンマルイチリダイレクト)」の設定メモです。過去に公開したwwwの有る無し(URLの「wwwあり」と「wwwなし」を301を使って統一する)メモと同様に、自分用のメモです。
一応解説しておくと、コンテンツは同じでURLが変更になった際の引越しの手続きとして、SEO的な観点+ユーザーがサイトを見失わないための配慮として、よほどの理由が無ければ設定しておく必要がある重要な作業が301リダイレクトになります。
サイトのURLが丸ごと変更になる場合
Options +FollowSymLinks RewriteEngine on RewriteRule (.*) https://www.barnetshenkinbridge.com/$1 [R=301,L]
.htaccessを作成し、メモ帳(付属のテキストエディタやTerapad等でOK)で開いて上記のコードを貼り付けます。「https://www.barnetshenkinbridge.com/」の部分は各自自分のURLにあわせてください。
ただし、上記の転送を利用するためには、以下の条件を満たす必要があります。通常のレンタルサーバーではほぼ条件は満たしていると思いますが、詳しくは各自がレンタルしているサーバー会社のヘルプを確認してみてください。
- Webサーバー上でApache(アパッチ)が利用可能
- かつ、「Mod-Rewrite」をサポート
サイトのURLが一部だけ変更になる場合やMod-Rewriteに対応していない場合
以下の記述でも転送を行なうことができます。また、Mod-Rewriteをサポートしていないサーバーの場合はこちらを利用します。
Redirect 301 / https://www.barnetshenkinbridge.com/
「https://www.barnetshenkinbridge.com/」の部分を自サイトのURLに変更して利用します。また、同一ドメイン内でURLが変更になった場合にもこちらの記述を利用します。
Redirect 301 /test/ https://www.barnetshenkinbridge.com/hogehoge/
上記の記述であれば、「/test/」というディレクトリにアクセスされた場合に、自動的に「/hogehoge/」へ転送します。個別のHTMLに対しても利用可能です。
Redirect 301 /test.html https://www.barnetshenkinbridge.com/hogehoge.html
この記述だと、「/test.html」にアクセスされたら、訪問者を自動的に「/hogehoeg.html」に転送してくれます。もちろん、ディレクトリ以下の個別HTMLにも指定が可能です。
注意点として、同一ドメイン内でのURL指定を間違えると読み込みがループしてしまい、今は殆ど無くなりましたがブラウザが固まってしまったり、強制終了となる場合もあります。転送がループになってしまう場合の記述例としては以下の様な場合です。
Redirect 301 /hogehoge/ https://www.barnetshenkinbridge.com/hogehoge/index.html
上記の例では「/hogehoge/」というディレクトリの中身を「/hogehoge/index.html」に転送するという命令になるのですが、「/hogehoge/」と「/hogehoge/index.html」は同じファイルを指しますので、永久ループに陥ってしまいます。
同様に、URLの「wwwあり」と「wwwなし」を301を使って統一するでも説明した、wwwの有り無しの設定を同時に行なっている場合でも無限ループが発生することがあるので注意が必要です。
SEOと301リダイレクト
新しいURLでサイトの運用を開始するということは、SEOに関しても一からやり直すことになりますので、何らかの理由が無ければURLの変更はなるべく行なわずにサイト運用を続けていくべきです。
しかし、301リダイレクトで転送を行なうことで、旧サイトのドメインパワー(ページランクも含む)を引き継がせることが可能なので、引越しの際はユーザーに対する配慮としてはもちろん、SEOを考える上でも必ず設定するようにしましょう。
ただし、100%完全にドメインパワーを引き継げる訳では無いらしい(元々の8割程度?)ので、引越し前は特定のキーワードで上位表示していたのに、引越し後しばらくして順位の下降があった・・・なんてことも十分起こりえますので、その点に関しては注意が必要です。