HTTPステータスコード
こちらの記事では、HTTPステータスコードについて解説します。
HTTPステータスコードとはHTTPリクエストの結果を表す3桁の数字です。
ステータスコードを知る事で今HTTP通信で何が起きているかを把握する事が出来ます。ウェブサイトにアクセスする際、ブラウザー(クライアント)はアクセスしようとしているサイトのWebサーバーにリクエストを送信します。
サーバーはリクエストを受信後、処理を行い関連するリソースをHTTPヘッダーと共に送り返します。
この際送り返されるWebサーバーの処理結果を表現する3桁の数字がHTTPステータスコードとなります。
3桁の数字には「処理が正常に行われた」「リクエストしたソース先が新しい場所に移動された」など様々な意味をもっています。
Webサイトを閲覧していて404 Not Foundという表示を見たことがある人もいると思います。この3桁の数字「404」はリクエストされたページが存在しない場合に表示されます。
HTTPステータスコードのクラス
HTTPステータスコードは100番台〜500番台まであり、以下の5つのクラスに分かれています。
コード番号 | コードの内容 |
---|---|
1xx | 情報レスポンス |
2xx | 成功レスポンス |
3xx | リダイレクション |
4xx | クライアントエラー |
5xx | サーバーエラー |
100番台のステータスコード(情報レスポンス)
100番台はリクエストに対して処理が継続されている事を表す正常な状態です。
ステータスコード100はサーバーがブラウザのリクエストヘッダーを受信し、リクエスト本文を受け取る準備ができたことを意味します。
100番台のステータスコード内容については後述します。
200番台のステータスコード(成功レスポンス)
200番台はリクエストを正しく受信し正常に機能している事を表します。
ウェブサーバーからステータスコード200を受信していればコンテンツを正常に閲覧出来ていると言えます。
2xxのステータスコードについてはこちらの記事で解説しています。 https://envader.plus/article/30
300番台のステータスコード(リダイレクション)
300番台はリダイレクト(転送)が行われた事を表します。
例えばブログのコンテンツを移転した場合に、移転先にリクエストを転送していることを表すといった用途があります。
3xxのステータスコードについてはこちらの記事で解説しています。 https://envader.plus/article/31
400番台のステータスコード(クライアントエラー)
400番台はクライアント(ユーザー)側のリクエストに不備がある事を表します。
存在しないページにアクセスしようとするなど、クライアント側の問題でページを表示できないケースが該当します。
4xxのステータスコードについてはこちらの記事で解説しています。 https://envader.plus/article/32
500番台のステータスコード(サーバーエラー)
500番台はウェブサーバーがリクエスト処理を失敗した事を表します。
例えばエラーコード503は、サーバーにアクセスが集中し同時アクセス数の許容値を超えた場合に表示されます。
5xxのステータスコードについてはこちらの記事で解説しています。 https://envader.plus/article/33
ステータスコード1xxについて詳しく
100番台はリクエストに対して処理が継続されている事を表します。
コード番号 | 意味 | 説明 |
---|---|---|
100 | Continue | サーバーがブラウザのリクエストヘッダーを受信し、リクエスト本文を受け取る準備ができたことを意味します。 |
101 | Switching Protocols | リクエストに対してサーバがプロトコルの切替えを要求しています。 |
102 | Processing | サーバーがリクエストを処理しています。 |
103 | Early Hints | サーバーの残りのレスポンスの準備が整う前に、先にいくつかのレスポンスヘッダーが返されます。 |
このようにステータスコード100番台ではユーザーのリクエストに対して処理が継続されている事を表示します。リクエストからレスポンスまで人の目では見えないほど高速で行われるためあまり意識されることはありません。
ステータスコードの確認方法
これらのHTTPステータスコードはブラウザの開発者モードで確認することが出来ます。
各ブラウザでのステータスコード確認方法は次のとおりです。
Google Chromeの場合
- 確認したいWebサイトを開きます。
- F12を押下し、開発者モードを開きます。
- Elements、Consoleなどが並ぶタブからNetworkタブを選択します。
- F5(Macは⌘+R)で更新します。
Microsoft Edgeの場合
- 確認したいWebサイトを開きます。
- F12を押下し、開発者モードを開きます。
- ネットワークタブを選択(隠れている場合は▼を押して「ネットワーク」を選択)
- F5(Ctrl+R)で更新します。
Firefoxの場合
- 確認したいWebサイトを開きます。
- F12を押下し、開発者モードを開きます。
- ネットワークタブを選択(隠れている場合は>>を押して「ネットワーク」を選択)
- F5(Macは⌘+R)で更新します。
まとめ
今回はHTTPステータスコードの概要と100番台の意味について解説をしました。
- ステータスコードとはWebサーバーからのレスポンス(応答)
- 100番台ではユーザーのリクエストに対し処理が継続されて実行されている事
開発者としてステータスコードを理解しておくと、エラー発生時などに原因の特定を行えるようになるので、主要なステータスコードだけでも覚えておきましょう。
【番外編】USBも知らなかった私が独学でプログラミングを勉強してGAFAに入社するまでの話
プログラミング塾に半年通えば、一人前になれると思っているあなた。それ、勘違いですよ。「なぜ間違いなの?」「正しい勉強法とは何なの?」ITを学び始める全ての人に知って欲しい。そう思って書きました。是非読んでみてください。
「フリーランスエンジニア」
近年やっと世間に浸透した言葉だ。ひと昔まえ、終身雇用は当たり前で、大企業に就職することは一種のステータスだった。しかし、そんな時代も終わり「優秀な人材は転職する」ことが当たり前の時代となる。フリーランスエンジニアに高価値が付く現在、ネットを見ると「未経験でも年収400万以上」などと書いてある。これに釣られて、多くの人がフリーランスになろうとITの世界に入ってきている。私もその中の1人だ。数年前、USBも知らない状態からITの世界に没入し、そこから約2年間、毎日勉学を行なった。他人の何十倍も努力した。そして、企業研修やIT塾で数多くの受講生の指導経験も得た。そこで私は、伸びるエンジニアとそうでないエンジニアをたくさん見てきた。そして、稼げるエンジニア、稼げないエンジニアを見てきた。
「成功する人とそうでない人の違いは何か?」
私が出した答えは、「量産型エンジニアか否か」である。今のエンジニア市場には、量産型エンジニアが溢れている!!ここでの量産型エンジニアの定義は以下の通りである。
比較的簡単に学習可能なWebフレームワーク(WordPress, Rails)やPython等の知識はあるが、ITの基本概念を理解していないため、単調な作業しかこなすことができないエンジニアのこと。
多くの人がフリーランスエンジニアを目指す時代に中途半端な知識や技術力でこの世界に飛び込むと返って過酷な労働条件で働くことになる。そこで、エンジニアを目指すあなたがどう学習していくべきかを私の経験を交えて書こうと思った。続きはこちらから、、、、
エンベーダー編集部
エンベーダーは、ITスクールRareTECHのインフラ学習教材として誕生しました。 「遊びながらインフラエンジニアへ」をコンセプトに、インフラへの学習ハードルを下げるツールとして運営されています。
関連記事
2020.02.25
完全未経験からエンジニアを目指す爆速勉強法
USBも知らなかった私が独学でプログラミングを勉強してGAFAに入社するまでの話
- キャリア・学習法
- エンジニア
2022.12.11
【徹底解説】ステータスコード4xxについて詳しく
こちらの記事では、HTTPステータスコード400系について解説します。
- WEB
2022.12.10
【徹底解説】ステータスコード5xxについて詳しく
こちらの記事では、HTTPステータスコード500系について解説します。
- WEB
2023.08.06
FQDN(完全修飾ドメイン名)とは?URLの仕組みから学ぶFQDN
今回はURLの仕組みからFQDNとは何か?について解説を行います。
- WEB