301リダイレクトとは?必要な理由や設定方法、注意点など徹底解説!
301リダイレクトとは、Webサイトの移転に伴って旧URLから新URLに変更した時に、恒久的なURL変更を表すHTTPステータスコード「301 Moved Permanently」を返すための転送処理のことです。
この301リダイレクトがうまくいけば、SEOの評価を引き継ぐことができます。
一方、301リダイレクトをしなかったり誤れば、Googleに評価されづらくなります。
具体的には、WebページのURLを変更した後に301リダイレクトをしなければ、変更前のURLについてる被リンクを変更後のURLに引き継げません。
そうなれば、変更後のURLの被リンクの数が減ってGoogleから評価されづらくなります。
結果、検索順位が下がるというわけです。
こうした良くない状況を回避する為に、301リダイレクトの基礎を理解して、適切に設定しましょう。
この点踏まえて今回は、301リダイレクトの意味や必要な理由、設定方法、注意点など中心に、初心者にもわかりやすくポイントをまとめて解説したいと思います。

301リダイレクトとは?
301リダイレクトとは、Webサイトの移転に伴って旧URLから新URLに変更した時に、恒久的なURL変更を表すステータスコード「301 Moved Permanently」を返すための転送処理のことです。
例えば、「https://seolaboratory.jp/seo-abc/」と「https://seolaboratory.jp/seo-edf/」のWebページのコンテンツ内容が重複してるので、「https://seolaboratory.jp/seo-abc/」のWebページにコンテンツ内容を統合したとします。
このときに、「https://seolaboratory.jp/seo-edf/」のURLのSEO評価を「https://seolaboratory.jp/seo-abc/」のURLに引き継ぐために恒久的な転送処理をします。
この処理が301リダイレクトというわけです。
301リダイレクトと302リダイレクトの違い
301リダイレクトと302リダイレクトは、意味や役割、検索結果で表示されるサイトURL情報が違います。
例えば、301リダイレクトは恒久的な転送を意味し、移転元のページURL(古いURL)から移転先のページURL(新しいURL)へSEO評価を引き継ぐことができます。
また、検索結果にインデックスされるコンテンツは新しく、かつ検索結果に表示されるURLも新しくなります。

一方、302リダイレクトは一時的な転送を意味し、移転元のページURL(古いURL)から移転先のページURL(新しいURL)へSEO評価を引き継ぎません。
また、検索結果にインデックスされるコンテンツは新しいですが、検索結果に表示されるURLは古いままです。
このように、意味や役割、検索結果で表示されるサイトURL情報が、301リダイレクトと302リダイレクトで大きく違います。
301リダイレクトが必要な理由
301リダイレクトが必要な理由はいくつかあります。
- SEO評価が下がるから
- 無駄にクロールされるから
- ユーザーが新しいページに自動的に遷移できないから
SEO評価が下がるから
301リダイレクトが必要な理由は、SEO評価が下がるからです。
例えば、サイトリニューアルに伴って「https://seolabo-abc.jp」から「https://seolabo-efg.jp」にURLを変更したとします。
このときに、301リダイレクトしなかったとします。
そうなれば、「https://seolabo-abc.jp」の旧URLの被リンクやコンテンツの評価が「https://seolabo-efg.jp」の新URLへ引き継がれません。
つまり、新URLのSEO評価が下がります。
SEO評価が下がれば、検索順位が下がりやすくなるでしょう。
このように、SEO評価が下がるので、301リダイレクトが必要というわけです。
無駄にクロールされるから
301リダイレクトが必要な理由は、無駄にクロールされるからです。
例えば、「https://seolabolatory.jp/abc」と「https://seolabolatory.jp/efg」のページURLのコンテンツ内容がほぼ同じで重複コンテンツだったので、「https://seolabolatory.jp/abc」のURLにコンテンツ内容を統合したとします。
このときに、301リダイレクトしなかったとします。
そうなれば、「https://seolabolatory.jp/efg」から「https://seolabolatory.jp/abc」のページURLに恒久的にURL変更したことが検索エンジンに伝わりません。
この場合、「https://seolabolatory.jp/efg」と「https://seolabolatory.jp/abc」の両方のページURLがクロールされます。
つまり、「https://seolabolatory.jp/efg」のページURLが無駄にクロールされます。
無駄にクロールされれば、クロールのリソースが浪費されて他の重要なページにクロールが行き届かなかったり、「https://seolabolatory.jp/abc」のページURLの重複コンテンツとして認識されるでしょう。
このように、無駄にクロールされるので、301リダイレクトが必要というわけです。
ユーザーが新しいページに自動的に遷移できないから
301リダイレクトが必要な理由は、ユーザーを新しいページへ遷移させることができないからです。
例えば、サイトリニューアルに伴って「https://seolabo-abc.jp」から「https://seolabo-efg.jp」にURLを変更したとします。
このときに、301リダイレクトしなかったとします。
そうなれば、「https://seolabo-abc.jp」の旧URLにアクセスしたユーザーが「https://seolabo-efg.jp」の新URLにアクセスできません。
つまり、ユーザーが新しいページに自動的に遷移できません。
結果、旧URLにアクセスしたユーザーが新URLにアクセスせずに離脱しやすくなるでしょう。
このように、ユーザーが新しいページに自動的に遷移できないので、301リダイレクトが必要というわけです。
301リダイレクトが必要な例
301リダイレクトが必要な例をいくつか紹介します。
- URLを変更して新しくする場合
- 複数のページのコンテンツを統合して1ページに集約する場合
- URLを正規化する場合
URLを変更して新しくする場合
301リダイレクトが必要なのは、URLを変更して新しくする場合です。
例えば、サイトをリニューアルしてドメインを新たに取得してに伴ってや 単純にURLの文字列を変更して複数のページのコンテンツを統合して1ページに集約する場合
301リダイレクトが必要なのは、複数のページのコンテンツを統合して1ページに集約する場合です。
URLを正規化する場合
301リダイレクトが必要なのは、URLを正規化する場合です。
301リダイレクトの設定方法
301リダイレクトの設定方法をパターン別にそれぞれ紹介します。
- ドメイン単位で転送する場合
- ページ単位で転送する場合
- ディレクトリ単位で転送する場合
- SSL化(httpからhttpsへの変更)に伴って転送する場合
- WordPressのプラグインを使って転送する場合
ドメイン単位で転送する場合
301リダイレクトは、ドメイン単位で転送する場合の設定方法があります。
例えば、サイトリニューアルに伴って「www.seolabo-abc.jp」から「www.seolabo-edf.jp」にドメイン名だけが変わったとします。
この変更に伴って、「www.seolabo-abc.jp」のドメインを「www.seolabo-edf.jp」のドメインに転送することが必要になります。
この場合、htaccessファイルにRewriteEngine onの宣言文を記述した後、URL書き換えを行うルール条件を指定する「RewriteCond」で旧サイトのドメイン名「www.seolabo-abc.jp」を含めたコードを書き、URL書き換えの実行を指定する「RewriteRule」で新サイトのドメイン名「www.seolabo-edf.jp」を含めたコードを記述します。
1 2 3 |
RewriteEngine on RewriteCond %{HTTP_HOST} ^(www.seolabo-abc.jp)(:80)? [NC] RewriteRule ^(.*) https://www.seolabo-edf.jp/$1 [R=301,L] |
もしくは、Redirect permanentの宣言文を記述した後、転送元のURL(旧サイトのドメイン名「www.seolabo-abc.jp」)を「/(スラッシュ)」から始まる絶対パス(URL-path)で書いて半角スペースを空けて、転送先のURL(新サイトのドメイン名「www.seolabo-edf.jp」)をスキーム名(httpなど)から始まる絶対URLで書きます。
1 |
Redirect permanent / https://www.seolabo-edf.jp/ |
これらのいずれかを記述したhtaccessファイルをサーバーにアップロードします。
アップロード後、「https://www.seolabo-abc.jp/seo301redirect(旧サイトのドメイン配下のページURL)」にアクセスして転送されたページURL(新サイトのドメイン配下のページURL)が「https://www.seolabo-edf.jp/seo301redirect」のように「seo301redirect」部分のディレクトリ名やファイル名が変わらずに表示されれば、ドメイン単位でうまく転送されてることになります。
これが、ドメインを変更した場合の301リダイレクトの設定方法です。
ページ単位で転送する場合
301リダイレクトは、ページ単位で転送する場合の設定方法があります。
例えば、重複コンテンツなので、「https://seolaboratory.jp/edf.html」のページURLのコンテンツ内容を「https://seolaboratory.jp/abc.html」のページURLのコンテンツに集約して統合するとします。
この統合に伴って、「https://seolaboratory.jp/edf.html」のページを「https://seolaboratory.jp/abc.html」のページに転送することが必要になります。
この場合、htaccessファイルにRewriteEngine onの宣言文を記述した後、URL書き換えの実行を指定する「RewriteRule」で、「/(スラッシュ)から始まる絶対パス(URL-path)」の転送元URL(/edf.html)を含めたコードを書き、続けて「スキーム名(httpなど)から始まる絶対URL」の転送先URL(https://seolaboratory.jp/abc.html)を含めたコードを書きます。
1 2 |
RewriteEngine on RewriteRule ^/edf.html$ https://seolaboratory.jp/abc.html [R=301,L] |
このように記述したhtaccessファイルをサーバーにアップロードします。
アップロード後、「https://seolaboratory.jp/edf.html(転送元のページURL)」にアクセスして転送されたページURLが「https://seolaboratory.jp/abc.html」のように表示されれば、ページ単位でうまく転送されてることになります。
これが、ページ単位で転送する場合の301リダイレクトの設定方法です。
ディレクトリ単位で転送する
301リダイレクトは、ディレクトリ単位で転送する設定方法があります。
例えば、「https://seolaboratory.jp/edf/seo.html」のページURLのディレクトリ名を「edf」から「abc」に変更して「https://seolaboratory.jp/abc/seo.html」のようなページURLに変わったとします。
この変更に伴って、ディレクトリ名だけ変わるように転送することが必要になります。
この場合、htaccessファイルにRewriteEngine onの宣言文を記述した後、URL書き換えの実行を指定する「RewriteRule」で、転送元URL(edf)を含めたコードを書き、続けて「/(スラッシュ)から始まる絶対パス(URL-path)」の転送先URL(/abc)を含めたコードを書きます。
1 2 |
RewriteEngine on RewriteRule ^edf(.*)$ /abc$1 [R=301,L] |
このように記述したhtaccessファイルをサーバーにアップロードします。
アップロード後、「https://seolaboratory.jp/edf/seo.html(転送元のページURL)」にアクセスして転送されたページURLが「https://seolaboratory.jp/abc/seo.html」のように表示されれば、ディレクトリ単位でうまく転送されてることになります。
これが、ディレクトリ単位で転送する場合の301リダイレクトの設定方法です。
SSL化(httpからhttpsへの変更)に伴って転送する場合
301リダイレクトは、SSL化(httpからhttpsへの変更)に伴って転送する場合の設定方法があります。
例えば、Webサイトのセキュリティ性を向上させるために、SSL化(httpのプロトコルをhttpsに変更)して「https://seolaboratory.jp」から「https://seolaboratory.jp」のURLに変わったとします。
この変更に伴って、「https://seolaboratory.jp」から「https://seolaboratory.jp」のURLへ転送することが必要になります。
この場合、htaccessファイルにRewriteEngine onの宣言文を記述した後、URL書き換えを行うルール条件を指定する「RewriteCond」でhttpsでなければという条件のコードを書き、URL書き換えの実行を指定する「RewriteRule」でSSL化したURL名「https://seolaboratory.jp」を含めたコードを記述します。
1 2 3 |
RewriteEngine on RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] |
このように記述したhtaccessファイルをサーバーにアップロードします。
アップロード後、「https://seolaboratory.jp(転送元のページURL)」にアクセスして転送されたページURLが「https://seolaboratory.jp」のように表示されたり、「https://seolaboratory.jp/abc/seo.html(転送元のページURL)」にアクセスして転送されたページURLが「https://seolaboratory.jp/abc/seo.html」のように表示されれば、サイト内のすべてのページがhttpからhttpsへうまく転送されてることになります。
これが、SSL化(httpからhttpsへの変更)に伴って転送する場合の301リダイレクトの設定方法です。
WordPressのプラグインを使って転送する場合
301リダイレクトは、WordPressのプラグインを使って転送する場合の設定方法があります。
例えば、WordPressでサイト構築していて重複コンテンツがあったので「https://seolaboratory.jp/edf」の記事のコンテンツを「https://seolaboratory.jp/abc」の記事のコンテンツに集約して統合するとします。
この統合に伴って、「https://seolaboratory.jp/edf」を「https://seolaboratory.jp/abc」のブログ記事のページURLに転送することが必要になります。
この場合、WordPressのプラグイン「Redirection」をインストールして有効化し、セットアップを完了します。
セットアップ完了後、設定画面に遷移して「転送ルール」の画面下にある「新しい転送ルールを追加」でソースURL(転送元のURL)に「https://seolaboratory.jp/edf」とターゲットURL(転送先のURL)に「https://seolaboratory.jp/abc」を入力して「転送ルールを追加」のボタンを押せば完了です。

完了後、「https://seolaboratory.jp/edf(転送元のページURL)」にアクセスして転送されたページURLが「https://seolaboratory.jp/abc」のように表示されれば、うまく転送されてることになります。
これが、WordPressのプラグインを使って転送する場合の301リダイレクトの設定方法です。
301リダイレクト確認方法
301リダイレクトの設定が終わった後は正しく動作しているかどうか「リダイレクトチェックツール」などで確認することが大切です。
このツールの場合だとリダイレクトされる前のURLを入力してチェックするだけで確認することができます。
ご覧の通り、簡単に301か302のチェックも行えます。

リダイレクトが失敗している場合や、301リダイレクトが正しく設定できていない場合は、以下のように表示されます。


301リダイレクトが利用できるサーバー環境
上記でご紹介した方法で301リダイレクトを行うためにはhtaccessファイルが使用できるサーバー環境である必要があります。
実装前にサーバー環境を確認し、使用できない場合は代用の方法を使いましょう。
301リダイレクトが利用できない場合
サーバーの環境上、.htaccessファイルが利用できず、301リダイレクトの設定が難しい場合があります。
その場合、以下方法で代用することが可能ですが、それぞれメリット・デメリットが有ります。
- canonicalを利用する
- PHPなどのプログラムを利用する
- meta refreshを利用する
- JavaScriptを利用する
301リダイレクト出来ない場合、canonicalやPHPなどのプログラムで代用するようにしましょう。
meta refreshやJavaScriptは、先ほども言ったようにGoogleに正しくリダイレクトが伝わる保証がないため、評価を落とさないためには事前にリダイレクトする方法を調査しておく必要があります。
301リダイレクトが適用されるまでの期間
301リダイレクト設定後、正しく評価を受け継ぐには通常数週間~数ヶ月かかる場合もあるようです。
この辺りの評価が正しく認識されるまでの期間についてはGoogleは以下のように言及しています。
- 301リダイレクトはページ単位で処理される
- 部分的に301されていてもドメイン全体で適用されたわけではない
- 一般的には、2、3週間〜4、5週間、または2ヶ月くらいかかる場合もある
- 1回のクロールで完了しない
- サイトまたはページが移転したという認識には時間がかかる
また、サーチコンソールの「アドレス変更ツール」を併用することで、Googleにより早い期間でサイトの移転を認識させることが可能のようです。
まとめ:301リダイレクトの基礎を理解して、適切に設定しよう
ということで、今回はURLが変更になった場合に必須の設定「301リダイレクト」についてご説明してきましたが、サーバー環境を調査して301でリダイレクトを適切に行い、リンク評価を維持することが大切です。
この設定が失敗していればトラフィックは激減してしまう可能性もあるように、リンクはSEO対策において最も重要な要素です。
リンクの質や量を最適化し、リンク評価を高めながら、順位上昇を目指しましょう。
SEO対策しても検索順位が上がらない…なぜ?

SEO対策しても検索順位が上がらない…なぜ?
検索順位が上がらない理由は、SEO対策の質が低いからです。
例えば、ユーザーの検索意図を無視したり、関連性の低いコンテンツを増やす、内部リンクの最適化など疎かにします。
この場合、SEO対策の質が下がります。
そうなれば、ページやサイト自体の品質が上がらないので、Googleに評価されづらくなります。
結果、検索順位が上がらないというわけです。
こうした悪い状況を回避する為に、サイトの欠点を調査して上位化に必要な対策をご案内します(無料)。
検索順位を上げたり、検索流入を増やすにはSEOが重要!