URL変更時の301リダイレクト設定方法

URL変更のリダイレクト

301リダイレクトとは

301リダイレクトとは、URLが恒久的に変更された際に用いる処理で、変更前のURLにアクセスがあった際に、新しいURLへ転送してくれる処理です。

様々な要因で、URLの変更が必要になる場合があります。

  • サイトの移転
  • ドメインの変更
  • 2つのページを1つのページへ統合
  • サイト構成の変更

301リダイレクトは、『ページ単位』で設定する場合『ドメイン全体』に設定する場合、『ディレクトリ単位』に設定する場合などがあります。

このブログでも、雑多ブログのため、途中でカテゴリ構成が変わってしまいURLを変更する際や、2つの記事を1つの記事に統合する際に古いページから新しいページへ転送するために301リダイレクトを設定しています。

『移転前のページが持つページの評価を新しいページへ引き継ぐ』というSEO上の効果の他、古いページにアクセスがあった際に404エラー(ページが見つかりません)になってしまう事態を防ぐ事ができるため、ユーザーの利便性も向上します。

似たようなリダイレクトに、『302リダイレクト』というものがあります。

『301リダイレクト』は恒久的に引っ越す際に使うのに対し、『302リダイレクト』は一時的に転送させたい場合に利用します。

302リダイレクトが適切な場合

リダイレクト先が後々変わる場合

メンテナンス中など一時的に転送する場合

デバイス別に表示ページを変える場合

『301リダイレクト』に比べると利用機会は少ないかもしれません。

301リダイレクト方法

ブラウザから、php、JavaScriptなどのプログラム上でリダイレクトさせる事も可能ですが、Googleは『.htaccess』を用いたリダイレクトを推奨しているため、『.htaccess』を使ってリダイレクトを行いましょう。

『.htaccess』は『ドットエイチティーアクセス』と読みます。

レンタルサーバーなどによっては、この『.htaccess』を操作できない場合もあるため、そのような場合は別の手段でリダイレクトするしかありません。

『.htaccess』で出来ること

リダイレクト

URLの正規化

ベーシック認証

アクセス制限

キャッシュの設定

今回は、『リダイレクト』についてお話しますが、下記記事で『正規化』について書いているので、良ければご覧ください。


URL正規化
URLの正規化でページ評価の分散を防ぐ

wwwの有無やSSL化、index.html等の有無は違うページと見なされ評価の分散が起こる危険性があります


『.htaccess』の設定を間違えると大変な事になる場合もあるため、間違えないよう良く調べてから編集しましょう。

『.htaccess』が既に存在する場合は、ルートディレクトリに設置されているため、確認してみましょう。

01旧サイトから新サイトのトップページへリダイレクト

旧サイトと新サイトの構成が異なり、どうにも出来ない場合に使う最後の手段といった手法でおすすめできません。

サイト転移とみなされず評価が引き継げない方法です。

リダイレクトこそされるものの、その他の効果はありません。

RewriteEngine On
RewriteRule ^(.*)$ https://new-site.com/

※URL部分は置き換え

スパムで使用されそうな手法であり、ユーザーにとっても開いたページとは違うページに飛ばされるため、好ましくありません。

Googleも『非推奨』としています。

02旧サイトと新サイトが同じ構成

旧サイトと新サイトの構成が同じ場合は、ドメイン単位でリダイレクトをする事が出来ます。

Redirect permanent / https://new-site.com/

※URL部分は置き換え

構成は変えず、『ドメインを変更』する際に利用できます。

03デイレクトリ単位のリダイレクト

ディレクトリ単位でもリダイレクトする事が可能です。

【同一ドメイン内でディレクトリを変更する場合】

RewriteRule ^old-dir(.*)$ /new-dir$1 [R=301,L]

※ディレクトリ部分は置き換え

【他ドメインへディレクトリ事転送する場合】

Redirect permanent /old-dir/ https://new-dir/

※ディレクトリ・URL部分は置き換え

04ページ単位でリダイレクト

Redirect 301 /old/sample1.html https://example.com/new/sample2.html

※URL部分は置き換え

転送元のパスは『.htaccess』から見た相対パスで記載、転送先は絶対パスで記載します。

05リダイレクトの回数制限

リダイレクト自体は、AからBへ、BからCへ、CからDへと何度でも行う事が可能ですが、サーバーに負荷もかかるため、なるべく少ない回数に抑えましょう。

ページ評価の受け渡しに関しては5回までという制限があるため、多くとも5回以内に抑えましょう。

リダイレクト後にする事

301リダイレクト設定後の元ファイルの扱い

リダイレクトの設定を行い、間違いなく転送されている事が確認できた場合、『転送元のファイルは削除』して問題ありません。

転送元のファイルは、開かれる事なく、転送先へリダイレクトされるため、転送元のファイルを使う機会は無くなってしまうからです。

ドメインを変更した際は、htmlファイルなどは削除してかまいませんが、『.htaccess』ファイルを削除しないよう気を付けましょう。

ドメインごと転送した場合、確かに旧ドメインは人の目に触れる事は無くなりますが、それはあくまでも『.htaccess』ファイルによってリダイレクトが行われているからです。

『.htaccess』ファイルを削除してしまうとリダイレクトが行われなくなってしまいます。

つまり、古いドメインもそのまま所持しておく必要があります。

リンクの修正

リダイレクトの設定を行った際は、旧URLへリンクを貼っている場合、新しいリダイレクト先のURLへ変更しましょう。

自身のサイトの『内部リンク』はもちろんですが、『外部リンク』に関しても、サイト運営者へ連絡するなどして、できるだけリンク先を変更してもらいましょう。

『ページ内部』からのリンク、『カテゴリページ』などからのリンク、『htmlサイトマップ』内のリンク、『XMLサイトマップ』内に記載したURLなど修正する箇所は多いです。

リンクの修正箇所を探す際は、Grepツールなどを使うと修正漏れが無くおすすめです。

リンク切れチェックツールなどもありますが、アフィリエイトリンクなどがあるサイトでは、確認が難しくなる場合もあります。

301リダイレクトの設定期間

『.htaccess』に記載したリダイレクトの設定期間はどのくらいなのでしょうか。

Googleの方の発信によると、『最低でも1年』、コストがかからないのでれば『それ以上』残しておく事を奨めています。

旧URLへのトラフィックが無くなれば不要になるケースもありますが、旧URLへ外部リンクが貼られていた場合、リダイレクトの設定を削除してしまうと被リンクの効果が失われてしまいます。

置き場所を変えた程度のリダイレクト設定であれば、『.htaccess』のリダイレクト設定を残しておくのにコストはかかりませんが、ドメインを変更した際などは、旧ドメインを常に所持しておくにはコストが発生してしまいます。

設定期間はサイト事、ページ事の状況により異なるため、1年間の設定以降は自分で判断するしかありません。

301リダイレクトのSEO効果

リダイレクトの役割としては、ユーザーにページの引越しを伝える、正しいページへ誘導するといった役割ですが、SEO対策上も重要な役割を果たします。

リダイレクトせずに、新しいURLでページを作成してしまうと、旧ページで獲得した評価は失われてしまい、1から評価を築き上げていかなければばらなくなってしまいます。

SEO対策上、旧ページの評価を引き継げるという効果があります。

特に旧ページが検索順位の上位に表示されていた場合など設定は必須です。

しかし、それは正しいリダイレクトを行った場合であり、『サイトの引越し』『ドメイン変更』『カテゴリ変更』『ファイル名変更』『ページの統合』などといった場合に使うもので、関連性のある転送先へのリダイレクトを行うという意識を持ちましょう。

『関連性のないページ』へのリダイレクトや、『一括して別サイトのトップページへ転送』などを行った際は『評価を引き継ぐ事はできません』。

不正なリダイレクト』と見なされた際はペナルティの対象となる場合もあるため、注意しましょう。

記事作成日:2021.06.02