HTTPステータスコード早見:意味と代表例をこれ一つで把握

HTTPステータスコード早見:意味と代表例をこれ一つで把握

Webサイトやアプリケーションを開発・運用する上で、HTTPステータスコードは避けては通れない重要な要素です。
しかし、その種類は多岐にわたり、それぞれの意味を正確に理解するのは容易ではありません。
特に、開発者でなくても、Webサイトの表示がおかしい、エラーが出ているといった際に、原因究明の手がかりとなるステータスコードの意味を知っておくことは、問題解決のスピードを格段に向上させます。
本記事では、HTTPステータスコードの意味と代表的な例を、この一つで網羅的に把握できるように解説します。
初心者の方でも理解しやすいように、専門用語は避けつつ、具体的なシチュエーションを交えながら、各コードが示す状況を分かりやすく解説していきます。
Webサイトの健全な運用と、スムーズな問題解決のために、ぜひ最後までお読みください。

目次

HTTPステータスコードの基本と分類

HTTPステータスコードとは、クライアント(ブラウザなど)からのリクエストに対して、サーバーがどのように応答したかを示す3桁の数字です。
このコードを見ることで、リクエストが成功したのか、何らかのエラーが発生したのか、あるいはリダイレクトが必要なのかといった、サーバー側の状況を瞬時に把握することができます。
Webサイトの表示速度やSEOにも間接的に影響を与えるため、その意味を正しく理解しておくことは、Webサイトのパフォーマンスを最適化する上で非常に重要です。

ステータスコードは、その最初の桁によって、大きく5つのクラスに分類されます。
この分類を知っておくだけでも、コードの意味を推測しやすくなります。
具体的には、1xx(情報)、2xx(成功)、3xx(リダイレクト)、4xx(クライアントエラー)、5xx(サーバーエラー)の5つです。
これらのクラスを理解することで、問題が発生した際に、それがクライアント側の問題なのか、サーバー側の問題なのか、あるいは単なる転送指示なのかを大まかに判断する手がかりとなります。
開発現場では、これらのコードを元にログを解析し、原因を特定していくのが一般的です。
例えば、404エラーが出ている場合、クライアントが指定したリソースが存在しないことを意味しますが、500エラーの場合は、サーバー側で予期せぬ問題が発生している可能性が高いと判断できます。

1xx:情報(Informational) – リクエスト処理中

1xx台のステータスコードは、クライアントからのリクエストを受け取り、現在処理中であることを示す情報提供のためのコードです。
このクラスのコードは、HTTP/1.1以降で導入された比較的新しいもので、通常、ブラウザなどのエンドユーザーが直接目にすることはほとんどありません。
しかし、ネットワークの通信状況を詳細に確認する際には、これらのコードが重要な手がかりとなることがあります。
例えば、プロキシサーバーを介した通信などで、クライアントとサーバー間のやり取りがスムーズに進んでいるかを確認するために使われます。
これらのコードは、リクエストが継続中であり、まだ最終的な応答が完了していないことを示唆しています。
そのため、これらのコードが表示されたからといって、すぐにエラーと判断する必要はありません。

代表的なコードとしては、「100 Continue」があります。
これは、クライアントがリクエストボディを送信する前に、サーバーがリクエストを受け入れる準備ができていることを示すために使用されます。
大きなデータを送信する際に、まずヘッダー情報だけを送信し、サーバーの応答を見てからボディを送信するかどうかを判断する、といった効率的な通信を実現するために役立ちます。
しかし、現代のWebアプリケーションでは、このコードが明示的に表示される機会は少なく、バックグラウンドで処理されることがほとんどです。
そのため、開発者以外の方がこのコードを目にする機会は非常に稀と言えるでしょう。

2xx:成功(Success) – リクエストは正常に処理された

2xx台のステータスコードは、クライアントからのリクエストがサーバーによって正常に処理されたことを示します。
Webサイトを閲覧していて、ページが問題なく表示される場合は、このクラスのコードが返されています。
ユーザーが最も頻繁に目にする、あるいは意識する機会が少ないのがこのクラスかもしれません。
なぜなら、何も問題なくWebサイトが機能している状態は、ユーザーにとって当たり前のことだからです。

最も代表的なコードは「200 OK」です。
これは、リクエストが成功し、要求されたリソースが正常に返されたことを示します。
例えば、Webページを閲覧した際に、このコードが返されていれば、ページは問題なく表示されるはずです。
「201 Created」は、リクエストが成功し、新しいリソースが作成されたことを示します。
これは、ユーザー登録やフォームの送信などで、新しいデータがサーバーに保存された際に返されることがあります。
「204 No Content」は、リクエストは成功したが、返信すべきコンテンツがないことを示します。
これは、例えば、データを更新するAPIリクエストなどで、処理は完了したが、クライアントに返す情報がない場合に利用されます。
これらの成功コードは、Webサイトが期待通りに動作している証であり、開発者にとっては安心材料となります。

3xx:リダイレクト(Redirection) – 別のURLへの転送

3xx台のステータスコードは、クライアントからのリクエストに対して、要求されたリソースが別のURLに移動したことを示します。
つまり、本来アクセスしたい場所が変更されているため、クライアントは指定された新しいURLに再度アクセスする必要があります。
WebサイトのURL変更や、古いページから新しいページへの誘導など、様々な場面で活用されます。
ユーザーが意識しないうちに自動的に転送されることが多いですが、時としてリダイレクトループなどの問題を引き起こすこともあります。

「301 Moved Permanently」は、リソースが恒久的に別のURLに移動したことを示します。
これはSEOの観点からも非常に重要で、古いURLから新しいURLへ検索エンジンの評価を引き継ぐために利用されます。
例えば、ドメインを変更したり、URL構造を整理したりする際に、このコードを使ってユーザーと検索エンジンを新しいURLへ誘導します。
一方、「302 Found」(または「307 Temporary Redirect」)は、リソースが一時的に別のURLに移動したことを示します。
これは、メンテナンスや一時的なキャンペーンなどで、一時的にページを別の場所に移動させる場合などに使われます。
SEOの評価は、元のURLに留まることが多いですが、恒久的な移動ではないことを明確に伝えるために使用されます。
これらのリダイレクトコードを適切に設定することで、ユーザーエクスペリエンスの低下を防ぎ、SEO効果を維持・向上させることができます。

301 Moved Permanently:恒久的な移動

301リダイレクトは、WebサイトのURLが恒久的に変更されたことを示す最も一般的なコードです。
例えば、httpからhttpsへの移行、wwwありとなしの統一、旧ドメインから新ドメインへの移行など、サイトの構造やURLを根本的に見直した際に使用されます。
このコードを正しく設定することで、検索エンジンは古いURLの評価を新しいURLに引き継いでくれます。
これは、SEOで最も重要な「リンクジュース」と呼ばれる検索エンジンの評価を失わないために不可欠な措置です。
もし301リダイレクトを設定せずにURLを変更してしまうと、検索エンジンは古いURLしか認識できず、新しいURLの検索順位は大幅に低下してしまう可能性があります。
また、ユーザーが古いURLをブックマークしていた場合でも、自動的に新しいURLへ誘導されるため、ユーザーエクスペリエンスを損なうことなく、スムーズな移行を実現できます。

具体的な例としては、以前「http://example.com/old-page.html」というURLで提供していたコンテンツを、現在「https://example.com/new-page.html」というURLで提供している場合、旧URLにアクセスがあった際に301リダイレクトを設定することで、自動的に新URLへ誘導されます。
これにより、ユーザーは目的のコンテンツにたどり着くことができ、検索エンジンも新しいURLをインデックスするように促されます。
これは、WebサイトのURL変更やリニューアルを行う際の、基本中の基本とも言える設定です。

302 Found / 307 Temporary Redirect:一時的な移動

302 Found(HTTP/1.0で定義)と307 Temporary Redirect(HTTP/1.1で定義)は、どちらもリソースが一時的に別のURLに移動したことを示すコードです。
302は古くから使われていますが、HTTPメソッド(GETやPOSTなど)の振る舞いがブラウザによって異なるといった問題がありました。
そのため、HTTP/1.1では、HTTPメソッドを維持したままリダイレクトさせるための307が導入されました。
一般的には、Webサイトのメンテナンス中や、特定のキャンペーン期間中に、一時的にページを別の場所に移動させる場合などに利用されます。
例えば、セール期間中にトップページを特別セールページに一時的にリダイレクトさせるといったケースが考えられます。

これらのコードは、リソースの場所が一時的なものであることを示唆するため、検索エンジンは通常、元のURLの評価を維持します。
つまり、SEOの観点からは、恒久的なURL変更ではないため、301リダイレクトのように評価が引き継がれるわけではありません。
そのため、一時的なリダイレクトが終了した後は、元のURLに戻すか、あるいは恒久的なリダイレクト(301)に切り替える必要があります。
しかし、一時的なリダイレクトであっても、ユーザーが目的のページにたどり着けない状況が長く続くと、ユーザーエクスペリエンスを損なう可能性があります。
そのため、一時的なリダイレクトの期間は最小限に留めることが重要です。

4xx:クライアントエラー(Client Error) – リクエスト側に問題あり

4xx台のステータスコードは、クライアント(ブラウザやユーザー)からのリクエストに何らかの問題があることを示します。
つまり、サーバーはリクエストを正しく受け取ったものの、その内容や形式に不備があり、処理できなかったという状況です。
Webサイトを閲覧している際に「ページが見つかりません」といったメッセージが表示される場合、多くはこのクラスのエラーコードが関係しています。

これらのエラーは、ユーザーが入力したURLが間違っている、リンクが切れている、あるいはクライアント側の設定に問題があるなど、様々な原因で発生します。
開発者にとっては、ユーザーからの問い合わせや、サイトの動作確認の際に、どの部分に問題があるのかを特定するための重要な手がかりとなります。
例えば、400 Bad Requestというコードは、クライアントからのリクエストが不正な形式であったことを示し、403 Forbiddenは、リクエストされたリソースへのアクセス権限がないことを示します。
これらのコードを理解することで、ユーザーに適切なフィードバックを提供したり、サイトのセキュリティを維持したりすることが可能になります。

404 Not Found:ページが見つからない

404 Not Foundは、HTTPステータスコードの中で最も有名で、多くのユーザーが一度は目にしたことがあるであろうエラーです。
「お探しのページは見つかりませんでした」といったメッセージとともに表示されることが多く、クライアントが要求したリソース(Webページや画像など)がサーバー上に存在しないことを意味します。
これは、URLの入力ミス、リンク切れ、あるいはサーバー側でファイルが削除されたり移動されたりした場合に発生します。
ユーザーにとっては、目的の情報にたどり着けないため、非常にストレスを感じるエラーです。

開発者としては、404エラーを最小限に抑えることが重要です。
定期的にサイト内のリンクをチェックし、リンク切れを修正するクローラーツールなどを活用することも有効です。
また、万が一404エラーが発生した場合でも、ユーザーがサイトから離脱しないように、カスタム404ページを作成することが推奨されます。
カスタム404ページでは、サイト内検索機能を提供したり、トップページへのリンクを設置したりすることで、ユーザーをサイト内に留める努力ができます。
これは、ユーザーエクスペリエンスの向上だけでなく、SEOの観点からも重要です。
検索エンジンは、サイトの使いやすさも評価するため、適切なエラーハンドリングはサイト全体の評価にも影響を与えます。

403 Forbidden:アクセス権限がない

403 Forbiddenは、クライアントがリクエストしたリソースへのアクセス権限を持っていないことを示すエラーです。
これは、サーバー側でアクセス制限がかけられている場合に発生します。
例えば、ログインが必要なページにログインせずにアクセスしようとした場合、あるいは特定のIPアドレスからのアクセスが禁止されている場合などに表示されます。
ユーザーにとっては、本来アクセスできるはずのページにアクセスできないという状況になります。

このエラーは、Webサイトのセキュリティと密接に関わっています。
意図せず機密情報が外部に漏洩しないように、サーバー側で適切なアクセス制御を行うことは非常に重要です。
しかし、開発者やサイト管理者が意図しない設定によって403エラーが発生してしまうこともあります。
例えば、ディレクトリのパーミッション設定ミスや、.htaccessファイルの設定誤りなどが原因となることがあります。
そのため、定期的にサーバー設定を確認し、意図しないアクセス制限がかかっていないかチェックすることが重要です。
また、ユーザーに対して、なぜアクセスできないのか、どのようにすればアクセスできるようになるのかといった、具体的な情報を提供することも、ユーザーエクスペリエンスの観点から望ましい対応と言えるでしょう。

5xx:サーバーエラー(Server Error) – サーバー側に問題あり

5xx台のステータスコードは、サーバー側で何らかのエラーが発生し、リクエストを正常に処理できなかったことを示します。
これは、クライアント側ではなく、サーバーそのものに問題があることを意味します。
ユーザーにとっては、Webサイトが利用できない、あるいは正常に動作しないという、非常に深刻な状況です。

5xxエラーは、サーバーの負荷が高すぎたり、プログラムのバグ、データベースとの通信エラー、あるいはサーバーの設定ミスなど、様々な原因で発生する可能性があります。
これらのエラーが発生した場合、ユーザーは何も


ホワイトペーパーダウンロード

aiblogproposal1

ミゴエイトでは無料で「AI × 人の力 で“検索されるブログ記事” を執筆代行サービス」お役立ち情報を提供しています。

完全成果報酬型のため、リスクなく始められるサービスです。

ぜひご活用ください。

担当者名
メールアドレス
確認のため、メールアドレスを2回入力してください。


AI執筆記事担当メンバー

コラム担当メンバー

長野県飯綱町を拠点に、Webマーケティング・DX支援を行う株式会社ミゴエイト代表。
SEO対策、コンテンツマーケティング、アクセス解析、AIを活用した記事制作・業務効率化支援を得意とし、中小企業から中堅企業まで幅広いWeb集客の支援実績を持つ。

・検索ニーズに基づいた成果につながるブログ設計
・広告に依存しすぎない中長期的な集客基盤づくり
・Googleアナリティクス等を用いた数値に基づく改善提案

を強みとし、机上の理論ではなく現場で実際に試し、検証してきたノウハウをもとに情報発信を行っている。

近年は、AIを活用したSEO・LLMO(Large Language Model Optimization)領域にも注力し、「わかりやすく、実務にすぐ使える」ことを大切にしたコンテンツ制作を継続中。

本ブログでは、Web集客に悩む企業担当者や経営者の方に向けて、専門用語に頼りすぎず、今日から行動に移せる実践的な情報を発信している。

目次