[2016/05/03] (最終更新日 2025/08/21)
404とリダイレクト、どっちがいいの?/在庫切れ商品ページとSEO
例えばビジネスサイトで販売している商品が在庫切れとなった時、404処理とリダイレクト設定では、どちらがSEO的に優れているのか、処理で迷うことがあります。
この疑問に、Googleが直接答えています。その回答について本記事で説明します。
目次
サイトの規模によって異なる「最適解」
404ページを表示させるか、または別のページにリダイレクトさせるか。これについてGoogleは、2014年の公式ビデオで回答を行っています。
要約すると次のようになります。
- 小規模サイトなら、在庫切れ商品の関連商品をページで表示する。
- 中規模サイトであれば、在庫切れに合わせてページを404処理する。
一時的な在庫切れなら、在庫が戻る時期をページで伝える。 - 大規模サイトであれば、unavailable_after タグを使用する。処理の自動化が望ましいため、在庫切れに気づいた時点で設定する。
サイトの規模により最適な対応は変わってくるのですね。
Google公式ビデオはこちらです。(Matt Cutts, Google, 2014、英語)
404ページとはどういうページなのか?
404ページとは、ユーザーが存在しないURLにアクセスした際に表示されるエラーページのことです。
これは「Not Found(見つかりません)」という意味で、リクエストされたページがサーバー上に存在しない場合に返されるHTTPステータスコード「404」に由来します。
例えば、商品が削除されたり、URLが変更された場合、その他リンク先が見つからないというリンク切れの状態などが原因で404ページが表示されます。
404ページは、ユーザーに「ページが見つからない」ことを伝えると同時に、サイト内の他のページへの誘導や、検索機能の案内などを設置することで、ユーザーの離脱を防ぐ役割も果たします。
404エラーにはいくつかの種類がある
404エラーにはいくつかの種類があります。主なものを以下に挙げます。
- ソフト404(Soft 404)
ページが実際には存在しないにもかかわらず、サーバーが「200 OK」などの正常なステータスコードを返してしまう場合に発生します。Googleなどの検索エンジンはこのようなページを「ソフト404」として認識し、インデックスから除外することがあります。 - ハード404(Hard 404)
ページが存在しない場合に、正しく「404 Not Found」ステータスコードを返すエラーです。ユーザーにも「ページが見つかりません」と表示されます。 - カスタム404
サイト独自のデザインやメッセージを表示する404ページです。ユーザー体験を向上させるために、サイト内検索や人気ページへのリンクなどを設置することが多いです。 - 一時的な404
一時的なサーバーの問題や、ページの移動・更新作業中などで一時的に発生する404エラーです。後でページが復活する場合もあります。
このように、404エラーにもいくつかの種類があり、それぞれ対応方法やSEOへの影響が異なります。
404ページを改善する方法は?
404ページ自体を改善するためには、以下のポイントを押さえることが重要です。
- 分かりやすいメッセージを表示する
ユーザーに「ページが見つかりません」と明確に伝え、なぜこのページが表示されたのか理由を説明しましょう。 - サイト内の他ページへの導線を設置する
トップページや人気ページ、カテゴリーページへのリンクを設け、ユーザーがサイト内を回遊しやすくします。 - 検索ボックスを設置する
ユーザーが探している情報を再検索できるよう、サイト内検索機能を設置しましょう。 - デザインを工夫する
サイトの雰囲気に合わせたデザインやイラストを使い、404ページでもユーザーの離脱を防ぎます。 - エラー発生を通知する
サイト管理者に404エラーの発生を通知し、リンク切れや誤ったURLを早期に修正できるようにします。
404ページは単なるエラーページではなく、ユーザー体験を向上させるチャンスでもあります。
ユーザーが迷わず次の行動に移れるよう、親切な設計を心がけましょう。
WordPressで404エラーを別ページにリダイレクトする方法の手順
WordPressで404エラーが発生した際に、ユーザーを別のページへ自動的にリダイレクトする方法について説明します。
- テーマフォルダ内の「404.php」ファイルを編集
使用中のテーマフォルダ内にある「404.php」ファイルをテキストエディタで開きます。 - リダイレクト用のコードを追加
404.phpの先頭(<?php
の直後など)に、以下のようなPHPコードを追加します。<?php header("Location: https://example.com/redirect-page"); exit(); ?>
※「https://example.com/redirect-page」の部分は、リダイレクト先のURLに書き換えてください。
- ファイルを保存してアップロード
編集した404.phpファイルを保存し、サーバーにアップロードします。 - 動作確認
存在しないURLにアクセスし、指定したページにリダイレクトされるか確認してください。
この方法で、WordPressサイトの404エラーページから任意のページへ自動的にリダイレクトできます。
プラグインを使って404リダイレクトを設定する方法
WordPressでは、プラグインを利用して404エラー時のリダイレクトを簡単に設定することもできます。代表的なプラグインとその設定手順を紹介します。
-
Redirectionプラグインを使う
- WordPress管理画面の「プラグイン」→「新規追加」で「Redirection」と検索し、インストール・有効化します。
- 「ツール」→「Redirection」を開きます。
- 「404s」タブで404エラーの発生状況を確認できます。
- 「リダイレクトを追加」から、
- 「ソースURL」:
/404
(または特定のパターン) - 「ターゲットURL」:リダイレクト先のURL
を設定し、「リダイレクトを追加」をクリックします。
- 「ソースURL」:
- これで、404エラー発生時に指定したページへ自動的にリダイレクトされます。
-
All 404 Redirect to Homepageプラグインを使う
- 「All 404 Redirect to Homepage」をインストール・有効化します。
- 「設定」→「All 404 Redirect to Homepage」から、リダイレクト先のURL(通常はトップページ)を指定します。
- 保存すれば、404エラー時に自動で指定ページへリダイレクトされます。
プラグインを使うことで、htmlやコード編集が苦手な方でも簡単に404リダイレクトの設定が可能です。サイトの運営状況や目的に合わせて、最適な方法を選びましょう。
\無料診断の活用で課題を明確に/
外部リンク、内部状況、コンテンツ状況からSEO対策の課題が見えてくる無料調査です。
「対策ページの弱点は何か...」などお悩みをお持ちの方は、一度「SEOパーソナル診断」をご利用ください。
404エラーページから「.htaccess」でリダイレクトする方法
404ページを「.htaccess」ファイルでリダイレクトする方法について説明します。
-
.htaccessファイルを編集する
サイトのルートディレクトリ(WordPressの場合は通常「public_html」や「www」など)にある「.htaccess」ファイルをテキストエディタで開きます。
※編集前に必ずバックアップを取ってください。 -
リダイレクト用の記述を追加する
404エラーが発生した際に特定のページへリダイレクトしたい場合、以下のような記述を「.htaccess」ファイルの適切な位置に追加します。ErrorDocument 404 /redirect-page
※「/redirect-page」の部分はリダイレクト先のパスやURLに書き換えてください。
例:ErrorDocument 404 https://example.com/redirect-page
のように絶対URLも指定可能です。 -
ファイルを保存してアップロード
編集した「.htaccess」ファイルをサーバーにアップロード(上書き)します。 -
動作確認
存在しないURLにアクセスし、指定したページにリダイレクトされるか確認してください。
「.htaccess」を使ったリダイレクトはサーバーレベルで動作するため、WordPress以外の静的サイトや他のCMSでも利用できます。
ただし、サーバーの設定や他のリダイレクトルールとの兼ね合いに注意してください。
サイトの規模別おすすめ対応内容
小規模・中規模・大規模とサイトの規模でおすすめの対応内容が変わります。サイト制作を進める上でも知っておきたい知識です。それぞれの対応内容を見ていきましょう。
小規模サイト:関連商品の表示
商品数が限られた小規模な販売サイトであれば、在庫切れ商品ページで個別に、ユーザにとって最も有益な対応を行うことができます。推奨策が、関連商品の表示です。
在庫切れの商品と関連していてユーザーが代わりに求めそうな商品を掲載できれば、コンバージョン対策に加えて、直帰率の抑制といったSEO対策にもなります。
中規模サイト:404処理 or 在庫復帰予告
それなりに商品数が多いサイトだと、在庫切れページに個別に関連商品を掲載するといった細やかな対応は難しくなってきます。
そのため、Googleが推奨しているのは、404処理です。こうするとユーザーは
・検索→商品ページにアクセス→でも買えない→ページを散策→在庫切れと気づく
というフローを短縮して、
・検索→商品ページにアクセス→404で直帰
というフローで済ますことができます。
あるいは一時的な在庫切れなのであれば、404にしなくても、在庫が戻る時期を明示しておくことで、ユーザフレンドリーな対応ができます。
いずれにせよシンプルな作業で対応できる所が、ページの多い中規模サイト向けと言えます。
とても大規模なサイトの場合は、meta unavailable_after タグを用いるよう推奨されています。
これは、ある日時になったらGoogle検索結果にそのページを表示させないようにするためのタグです。例えば下記のように記述します。
<meta name=”googlebot” content=”unavailable_after: 1-May-2016 09:00:00 JST”>
meta unavailable_after タグの設定方法をもう少し詳しくご紹介します。meta unavailable_after タグはHTMLファイルの<head>タグ内に記載します。ページごとに設定する必要があり、掲載停止したい日時を指定します。具体的な記述例は以下の通りです。
<head> ... <meta name="googlebot" content="unavailable_after: 1-May-2016 09:00:00 JST"> ... </head>
このように、<head>
タグ内にmetaタグを追加することで、Googlebotに対して「指定日時以降はこのページをインデックスしないでください」と伝えることができます。
また、複数ページや自動化が必要な大規模サイトの場合は、CMSやサーバーサイドのテンプレートを利用して、該当ページのみに自動でmetaタグが挿入されるように設定するのが一般的です。たとえば、商品ごとに掲載終了日をデータベースで管理し、その値をもとにmetaタグを動的に出力する仕組みを作ると効率的です。
- unavailable_afterで指定する日時は、英語表記で記載し、タイムゾーン(例:JST)も明記してください。
- このタグはGooglebot専用のため、他の検索エンジンには効果がありません。
- 掲載終了後もページ自体は削除されません。必要に応じて404ページ化やリダイレクトも検討しましょう。
またGoogleは、大規模サイトだけに、この処理は自動化するように推奨しています。
301リダイレクトと404の違い
なお、サイト管理者によっては、こうした在庫切れの際に301リダイレクト処理を使おうとすることがありますが、これについても説明がありましたので紹介します。
301リダイレクトは、サイト引越しの際など、旧URLから新URLに恒久的な転送をさせる方法です。
例えば商品Aが在庫切れになったとき、301リダイレクトで関連商品Bのページに飛ばす方法も考えられなくはないですが、Googelはこれを推奨していません。検索から商品Aページに来たユーザーが商品Bページに突然飛ばされると、ユーザーは単純に混乱するからです。
\無料診断の活用で課題を明確に/
外部リンク、内部状況、コンテンツ状況からSEO対策の課題が見えてくる無料調査です。
「対策ページの弱点は何か...」などお悩みをお持ちの方は、一度「SEOパーソナル診断」をご利用ください。
404 / リダイレクト と順位上昇の関係
いずれにせよGoogleが推奨しているのは、ユーザーにとってベストな方法で、かつ、サイト管理者に負担がかかり過ぎない方法です。
つまり基本的には、ユーザーが混乱しない方法であれば、SEO的に評価が低くなることはない、と言えます。
なお、SEOで順位を上げるという意味では、こうした404やmetaタグの対策優先度は比較的低く、まず被リンク対策と高品質コンテンツの用意が先決な点に注意してください。
404 / リダイレクト とSEOの優先順位
下図はGoogle公式の定義によるSEO評価の優先順です。
404やunavailable_afterタグによる最適化は、この評価ピラミッドでいう一番上の「その他要素」に分類され、順位上昇のための優先度はかなり後になります。
順位上昇の基盤となる「コンテンツ」は、サイトを良く知る管理者自身が作成するのが近道となります。また被リンクは、自然な被リンクの獲得のため、SEO Packで対策するようにします。
404などのサイト改善の際は、サイトの有力ページで被リンク対策忘れがないか、必ず一緒にチェックしましょう。

この記事が役に立ったらSNSで共有してください。