404エラーの発生原因と対処方法を解説

404エラーとは、アクセスしようとしたページが、指定したサーバー上に見つからない場合に表示されるHTTPステータスコードです。

404エラーが生じる原因には何が考えられるのでしょうか?
また、求めたページを開けない状態は、SEOにどのような影響を与えるのでしょうか?

サイト運営をする上で知っておくべき404エラーの基本や原因、対処方法をご紹介します。

404エラー (404 Not Found)とは

404エラー(404 Not Found)とは、アクセスしようとしたページが見つからないときに表示されるエラーメッセージです。

404エラーを最小限に抑えることで、Webサイトでのユーザーエクスペリエンス(UX)を向上できます。まずは、404エラーの意味から確認していきましょう。

404エラーの意味

404エラーは、HTTP(Hypertext Transfer Protocol)ステータスコードの中の一つで、サーバー上にリクエストしたページが見つからない場合に表示されます。

HTTPステータスコードとは、HTTPにおいてWebサーバーからのレスポンスの意味を表現する3桁の数字からなるコードで、100番台から500番台までが存在します。続いて、404エラー以外のエラーに関するステータスコードをご紹介します。

その他のエラーに関するHTTPステータスコード

HTTPステータスコード一覧
HTTPステータスコード 意味 原因
400 Bad Request リクエストが不正です クライアント側のリクエストの不備
401 Unauthorized 認証が必要です 認証されていないアクセス
403 Forbidden アクセスが禁止されています 権限がないアクセス
404 Not Found リソースが見つかりません URLが間違っている
ファイルが削除された
名前が変更されたリソースへのアクセス
500 Internal Server Error サーバーエラー サーバー内部の問題
502 Bad Gateway プロキシサーバーエラー プロキシサーバー側の問題

これらは、404エラー以外によく発生するHTTPステータスコードの例で、この外にも様々なHTTPステータスコードが存在します。

よく発生するエラーは404や500、502になりますが、エラーに関するステータスコードはある程度覚えておきましょう。

404エラーとソフト404の違い

404エラーの中には、ソフト404と言われるものが存在します。

両者の違いは、404エラーは削除されたページが存在しないことを伝えてくれるのに対し、ソフト404エラーはページが存在していないにも関わらずアクセスができるように扱われるという点です。

ソフト404とは、404エラーと同様に、リンク先のページが存在しないときに起きるエラーです。しかし、ソフト404エラーの場合、HTTPステータスコードとして404は表示されず、サーバーのリクエストに対して正常なアクセスとして扱われます。

ソフト404となるページは、存在しないためユーザーはアクセスできず、内容を見ることができません。しかし、ステータスは「正常」と認識されてしまうことから、検索エンジンのクローラーは、該当ページをクローリングしてしまいます。これはクローラビリティ低下の原因となり、SEOにも悪影響を及ぼします。

ソフト404エラーが検出されたら、急いで対策する必要があります。

404エラーのSEO評価への影響

SEOでは、ユーザビリティの向上も施策の1つです。自社サイト内に404エラーがあると、SEOにどのような影響が出るのか、確認しましょう。

ページ単位の場合

Google検索セントラルに、404エラーについて言及している箇所があります。

変化を続けるインターネット上では、古いコンテンツが消え、新しいコンテンツが作られています。404エラーは、ウェブの動作として正常なものです。検索エンジンにとっては、コンテンツが削除された場合に404エラーが返される方が望ましく、ランキングには影響しません。

以上のように、404エラーがあっても、SEOには影響がありません。とはいえ、重要なページが表示されない場合は、Google Search Consoleを使って原因を調べる必要があります。

例えば、ユーザーがURLを直接入力し、アクセスしようとしてスペルミスがあったなどのケースも考えられます。サイト側の設定ミスかどうか必ず確認しておきましょう。

ページ内で部分的に読み込んでいる箇所の場合

ページによっては、部分的に別ファイルやページから情報を読み込んでいるケースがあります。(口コミや引用など)

そのような、部分的に読み込みを行っている箇所でエラーが発生すると、該当箇所のみが表示されないようになっています。具体的には、画像や動画のリンク、iframeなどを使った別サイトからの引用などで、URLに間違いがあると部分的なエラー表示になります。

また、ページ単位のエラーと同様に、コンテンツの一部に404エラーが生じていたとしてもSEOへの影響はありません。しかし、ユーザーがコンテンツを読む上で、情報を理解するのに役立つ画像や動画がエラー表示だと、十分な理解が出来ない可能性もあります。

ユーザビリティを高めるためにも、ページそのものだけでなく、ページ内の部分的な404エラーはなるべく発生させないように心がけ、見つけた場合には急ぎ改修しておきましょう。

404エラーが発生する原因

サーバーにアクセスしてもページが見つけられない場合に返ってくる404エラーは、何が原因で発生するのでしょうか。

404エラーが発生する原因は以下のようになります。

1.URLが間違っている

1つ目は、URLの入力ミスです。

リンクからのアクセスではなく、直接URLを入力してページにアクセスする場合、スペルミスがあると存在しないページへのアクセスをリクエストすることになるため、404エラーが返ってきます。

2.ページが削除されている

2つ目は、ページが削除されている場合です。

ページが既に削除されている場合は、404エラーが出ます。自社サイトの内部リンクや、外部サイトからのリンクがある場合、削除したページへのリンクがそのままだと「リンク切れ」を起こします。

ページを削除する際は、自社サイト内の内部リンクチェックだけでなく、外部サイトからの被リンク対象になっていないか確認しましょう。もし外部サイトからのリンクを受けている場合は、301リダイレクトを設定し適切にユーザーを転送しましょう。

3.旧URLから新URLへのリダイレクトができていない

3つ目は、URLを変更したものの、リダイレクト設定がされていないことです。

何らかの理由でURLを変更したにも関わらず、リダイレクト設定をしなければ、旧URLへのアクセスをリクエストすると404エラーが表示されます。ページ単位のURL変更だけでなく、ドメイン移管やSSLを導入する場合は、必ず301リダイレクト設定をしておきましょう。

301リダイレクトが正しく設定されていれば、ユーザーは404エラーではなく、求めていたページを開くことができます。また、旧URLが得ていた検索エンジンからの評価受け継ぎにもなるので、必ずリダイレクトの設定をしておきましょう。

4.リンク先のURLが変わっている(リンク切れ)

4つ目は、リンク先のURLが変わっているリンク切れです。

2つ目で紹介したように、ページが削除されると、リンクに設定していたURL先にアクセスできないため、404エラーが表示されます。自社サイト内のページ削除は、任意で行うためリンク切れは確認しやすいものといえます。しかし、外部サイトへのリンクを貼っていて、そのページが削除されてしまい、リンク切れを起こすと通知がなければ気づきにくいです。

Google Search Consoleを使うとリンク切れをチェックできるので、定期的に確認しましょう。

5.サーバーの設定が間違えている

5つ目は、サイトを設置しているサーバーの設定ミスです。

自社サイトを設置しているサーバーのWebサーバーソフト(Apacheなど)の設定が正しくない場合、404エラーが発生します。

ディレクティブ設定が正しくない場合や、パーミッション設定を間違えている場合、さらに転送用のテキストファイルである.htaccessのパスが間違えているとファイルを見つけられず404エラーが返されることになります。

404エラーを対処する方法

404エラーが表示される場合、そのままの404 Not Foundという表示画面だとアクセスしようとしたユーザーが離脱してしまう可能性が高くなります。

ユーザーを自社サイト内の他のページに促し、離脱を防ぐための対処方法をご紹介します。

オリジナルの404エラーページを作成

独自の404エラーページを用意しておこう

404エラーが出ると、通常は「404 Not Found」というテキストだけが表示されます。ユーザーはブラウザの戻るボタンやホームボタンから別ページへ移動するか、画面を閉じることになり、サイトから離脱する可能性が高いです。

404エラー用のオリジナル別ページを作成し、自社サイト内の別ページへの導線を用意しておきましょう。

サイトマップを設置する

404エラーが表示された際に、オリジナルページにサイトマップを設定すると、ユーザーは目的のページを見つけやすくなります。見てみようと思っていたページが404エラー表示になっても、サイトマップからユーザーが興味を持つ、その他のページへ導くことができます。

オリジナル404エラーの作成方法

404エラー発生時、デフォルトのテキスト表示ではユーザーの離脱する確率が高いです。404エラーが出てもユーザーが自社サイトに残ってくれるよう、オリジナル404エラーページを用意おきましょう。

オリジナル404エラーページの作成について、抑えておくべきポイントをご紹介します。

サイトのデザインと統一する

オリジナルの404エラーページは、自社サイトのデザインやレイアウトと統一させ、違和感のないものを作成しましょう。404エラーは表示頻度が多くはないものの、オリジナル404エラーページだけ趣向が異なると、違和感があります。

404エラーでもデザインに統一感を持たせ、自社サイトにアクセスしてくれていることを意識してもらいましょう。

404のページであることを伝える

オリジナルの404エラーページを作成する場合、404エラーが発生していることと、その原因を表示させましょう。

アクセスしようとしたURLに間違いがあるか、すでにページが削除または移動されたことを記述し、なぜ404エラーが出ているのかユーザーに伝えます。

オリジナル404エラーページに記載すべき内容

オリジナル404エラーページの内容には、以下を記載しておくと良いです。

オリジナル404ページ記載事項
  • 404エラーが発生していることとその原因
  • トップページへのボタン
  • サイト内検索窓
  • サイトマップ

その他、自社マスコットを表示させている企業サイトも多く見かけます。

オリジナル404エラーページに画像やCSSを引用する場合は、絶対パスではなく、ルートパスで記載するのがルールです、注意しましょう。

ユーザーにクリックさせず、一定時間で転送させる場合には、ヘッダー部分にJavascriptで以下を追記すると良いです。

<script>
window.onload = function(){
setTimeout( "location.href='./' ", 5000);
}
</script>

5000の部分が転送までの時間(5秒)なので、任意の数値に変更してご使用ください。

404エラー用のオリジナルページが完成したら、自社サイトを設置しているサーバー直下に設置しておきましょう。

404エラーを確認する方法

自社サイト内に404エラーが発生しているかどうか、確認する方法をご紹介します。

Google Search Consoleによる404エラー確認方法

404エラーは、Google Search Consoleの設定をしておくと検知できます。

Google Search Consoleログイン後、インデックス作成内にある「ページ」をクリックします。404エラーが検知された場合、「ページがインデックスに登録されなかった理由」という項目に「見つかりませんでした(404)」が掲載されます。

サーチコンソールで404エラーを検知

「見つかりませんでした(404)」をクリックすると、404エラーが発生しているページURL一覧が表示されるので、それぞれの内容を確認し、問題を解決します。ページ内容を編集後、「修正を検証」をクリックし、404エラーを解消しましょう。

Google Analytics(GA4)を使った404エラー確認方法

次に、Google Analytics(GA4)を使った404エラーの検知方法をご紹介します。

前提として、オリジナル404エラーページを設定しておく必要があります。

Google Search Console(GA4)ログイン後、メニューの中から「レポート」をクリックします。

次に展開されるメニューの中から「エンゲージメント」、さらに「ページとスクリーン」を選択すると以下の画面が開きます。

Googleアナリティクス(GA4)で404エラーを確認する方法

検索窓に「404」と入力して、何も表示されなければ404エラーは表示されません。もし404エラーが発生していれば表示されるので、流入元を確認して問題点を解決しておきましょう。

アクセスログから404を見つける

404エラーの有無は、自社サイトを設定しているサーバーへのアクセスログからも確認できます。

アクセスログをチェックし、404エラーを見つけたら内容を確認しておきましょう。

また、新しいコンテンツを作成し、ページを公開する前にはデベロッパーツールを使って、404エラーが発生していないか確認しておくと良いです。

ブラウザにGoogle Chromeを使用している場合の、デベロッパーツールによる404検出方法をご紹介します。

デベロッパーツールを使った確認方法

まず、パソコン画面で作成したページを開き、F12ボタンを押してデベロッパーツールを開きます。次に、ツールバーの「Network」を選び、「Disable cache」にチェックを入れて、F5を押します(ページのリロード)。

すると、画面右下にHTTPステータスコードが表示されるので、404エラーが出ていないか確認できます。404エラーが見つかったら訂正してからページを公開し、クローリングしてもらいましょう。

404エラーを回避する方法

404エラー発生時に、オリジナルページを用意しただけだと、そのページではなく、デフォルトの404エラーが表示されてしまいます。

デフォルト表示を回避し、オリジナルページを表示させる方法をご紹介します。

.htaccessを使用する

404エラー発生時に表示させるページを変更するため、.htaccessファイルに以下を記述します。

ErrorDocument 404 /404.html

これは、「404エラーを検出した場合、404.htmlを表示する」という指示になります。

注意点として、404オリジナルページ(404.html)の指定を、絶対パスではなく、相対パスで記述します(絶対パスだと正規ページ扱いとなるため)。

上記設定をしておくことで、404エラーが発生した際、オリジナルページ(404.html)が表示されます。

WordPressの場合

CMSにWordPressを使っている場合、404pageというプラグインを使うと簡単にオリジナルの404エラーページを設定できます。表示させたい内容を固定ページで作成し、プラグインで指定すれば設定完了です。

また、使用しているテーマ別に404.phpという404エラー発生時に表示させるページが設定されていることもあります。システム上の問題でプラグインが使えない場合は、404.phpを編集し、オリジナルページに表示させたい内容を記述しましょう。

レンタルサーバーを使用している場合

自社サイト運営にレンタルサーバーを使用していると、それぞれの会社ごとに404エラーに関する設定が選べます。

設定方法に差異はありますが、オリジナルページをroot直下に指定し、ファイル名を相対パスで指定することに変わりありません。利用しているレンタルサーバーにログインし、どのような404エラー設定ができるか、確認しておきましょう。

まとめ

404エラーは、長くサイト運営をしていく中で、ページの削除やドメイン移管後の転送設定をしておかないと表示されるものです。

Googleは404エラーが出ても、ランキング評価に影響がないとしています。しかし、ソフト404エラーの場合はクローラビリティ低下に影響するため、修正が必要なことを覚えておきましょう。404エラーは、Google Analyticsや、サーバーへのアクセスログを確認することで検知できます。

404エラーが表示される際は、ユーザーが離脱せず、自社サイト内に留まってもらえるようなオリジナルページを設定します。

アクセス数を確保するため、SEO対策を行い、自社サイトへたどり着いたユーザーを逃さないように、404エラー対策をしておきましょう。