Re:ゼロから始める文系プログラマ

未経験がプログラミングを通して人生を変える

【重要】Webプログラミングで登場する、覚えておきたいエラーメッセージ


スポンサードリンク
 

f:id:ShotaNukumizu_1000:20211013131055p:plain

おはようございます。Shotaです。

本記事を読んでいる人の中には、Webプログラミングを勉強している際に(例えばWebアプリの開発)、エラーメッセージを読み取れない人も少なくないと思います。

そこで、今回の記事ではよく出てくるエラーメッセージについて徹底解説していきます。今回の記事を参考に、エラーの改善に役立ててもらえれば幸いです。

それでは早速、本題に入りましょう。



取り上げるエラーメッセージ「HTTPレスポンスステータスコード」とは

HTTPレスポンスステータスコードとは、ブラウザからリクエストした内容に対してのサーバからのレスポンスです。

例えば、Webサイトを閲覧する際にブラウザのアドレス欄にURLを入力して送信すると、リクエストした先のサーバから「ブラウザにWebサイトの内容を表示する」というレスポンスが返っていきます。

しかし、時々リクエストしたWebサイトが見つからないなど、何らかの理由で表示できないこともあります。このときのインターネット上の通信結果を3桁の数字でわかりやすく表現したのが「HTTPステータスコード」です。

HTTPステータスコードを覚えておくと、何らかの理由で異常が発生したときにその原因と対処法が分かります。


コード400番台

HTTPステータスコードの400番台はリクエストするクライアント(いわゆるWebページを見る人のこと)側に問題があって発生したエラーを意味します。


400 Bad Request

f:id:ShotaNukumizu_1000:20211013132509p:plain

Bad Requestとは、主にクライアントからのアクセスに問題があり、サーバがアクセスを処理できない場合に発生するエラーです。

エラーの原因ははっきりしていません。Chromeブラウザを使っている場合、メニューアイコンの「その他のツール」→「閲覧データを消去する」を選択するとエラーが解消されることがあります。


403 Forbidden

f:id:ShotaNukumizu_1000:20211013133057p:plain

Forbiddenとは、クライアントにリクエスト先のアクセス権がない場合に表示されるステータスコードです。

このコードが表示された場合、クライアントがリクエスト先を閲覧するためにはWebサイトの管理者にアクセス権を付与してもらうか、アクセスが許可されたネットワーク環境で閲覧するしかありません。


404 Not Found

f:id:ShotaNukumizu_1000:20211013133433p:plain

Not Foundとは、リクエスト先のページがない場合に表示されるステータスコードです。ステータスコードの中では最も目にすることが多いコードだと思います。

主な原因は以下の通りです。

  • 入力したURLのつづりが間違っている
  • リクエストしたページがすでに削除されている


企業のサイトの中にはオリジナルの404エラーページを作って、訪れたクライアントがサイト内の別のページへ行けるように工夫しているところもあります。


408 Request Timeout

Request Timeoutとは、リクエストに時間がかかり完了しないまま時間切れになった場合に表示されるステータスコードです。

408エラーは、例えばサーバがクライアントに提供するファイルが大きすぎたり、サーバ混雑したりすると発生しやすくなります。このようなエラーが表示された場合は、少し時間をおいてから再度アクセスするとエラーが改善することがあります。


コード500番台

HTTPステータスコードの500番台は、サーバ側に問題が発生してリクエストに応答できない状態を表示しています。400番台に比べて実装されている数は少ないものの、中にはサーバ内部でバグが発生している深刻なエラーもありますので注意してください。


500 Internal Server Error

f:id:ShotaNukumizu_1000:20211013134221p:plain

Internal Server ErrorはServerに何らかの問題が発生してリクエストを実行できない場合に表示されるステータスコードです。

また、レンタルサーバなどのメンテナンスや接続障害が起こっている場合も500エラーが発生します。


502 Bad Gateway

Bad Gatewayは、ゲートウェイとして動作するServerに問題が発生した場合に表示されます。

ゲートウェイとは、通信プロトコルを変換してネットワーク同士をつなげる機器のことで、例えばスマートフォンからインターネットに接続できるのもゲートウェイを経由しているからだと言えます。

原因を具体的に特定できないので、なかなか対処しづらいエラーの一つです。


503 Service Unavailable

f:id:ShotaNukumizu_1000:20211013134609p:plain

Service Unavailableはリクエスト先にアクセスが集中、あるいはメンテナンスなどでサーバが一時的に利用できない状態になった場合に表示されるステータスコードです。

ほとんどのレンタルサーバでは過剰な負荷を防ぐため、データの転送量と同時アクセス数に上限を設けており、この上限数を超過すると503エラーが出ます。

例えば、Twitterのフォロワー数が数十万人というインフルエンサーがURLをシェアしただけでアクセス数が急増し、503エラーが発生して通信制限がかかることは珍しくありません。


HTTPステータスコードが表示されたときの主な対処法

HTTPステータスコードに表示された場合の対処法は、クライアントとWebサイトの管理者で異なります。特にWebサイトの管理者はHTTPステータスコードをもとに適切かつ早急に対処しなければ、Webサイトを訪れてくれるユーザを失いかねません。

本章では頻繁に使われるHTTPステータスコードについて、クライアントとWebサイトの管理者の対処法をそれぞれ解説します。


403エラーの対処法

このエラーはリクエスト先のアクセス権限がない場合に発生するので、クライアント側としては

  • Webサイトの管理者に問い合わせる
  • ネットワーク環境を変えてみる


この2つしか対処法がありません。

管理者の場合はリダイレクト処理を行い新しいサイトへ転送するなどの配慮が必要です。


404エラーの対処法

クライアント側はアドレス欄に入力したURLが間違っていないかどうか点検してください。

Webサイトの管理者の場合は、アクセス先のサイトがリンク切れを起こしていないか、謝ってサイトそのものを削除していないかチェックしてみましょう。また、リダイレクト処理に不具合がある場合でも「404 Not Found」が表示されます。


503エラーの対処法

リクエスト先に同時アクセスが集中しているなど、サーバ側に主な原因があります。クライアント側の対処法としては通常のサイトが表示されるまで待つしかありません。

Webサイトの管理者の対処法としては、主に以下のようなことが挙げられます。

  • 多少コストが掛かってもスペックが高い専用サーバを導入する
  • 動画や画像を減らしてサイトの表示速度を改善し同時アクセス数を減らす


この2つがおすすめです。


まとめ:HTTPステータスコードをWebサイトの改善に役立ててみよう

今回の記事では、Webプログラミングで登場する覚えておきたいエラーメッセージについて徹底解説しました。

サーバ管理者やWebサイトの管理者の場合、400番台や500番台のエラーが発生した場合、ただちに修正あるいは改善に取り掛かる必要があります。

WEBプログラミングにおいて、HTTPステータスコードは活用するものと言っても過言ではありません。これまで意識していなかったならば、ぜひ今後のウェブサイト制作に生かしてみてはどうでしょうか?

今日の記事はこれで終了です。

【参考サイト】

developer.mozilla.org

www.sungrove.co.jp

www.sun-m.co.jp

tonichi-printing.co.jp