HTTPの解説(基本情報技術者シラバス用語)

目次

HTTPとは

HTTP(Hypertext Transfer Protocol)とは、WebブラウザとWebサーバーの間で、ホームページのデータ(HTMLや画像など)をやり取りするために使われる通信プロトコル(約束事)のことです。現在、私たちがWebサイトを閲覧する際の最も基本的なルールとなっています。

HTTPによる通信は、ブラウザがサーバーに対して「このページを読みたいです」と要求する「リクエスト」と、サーバーがそれに対して「はい、これがデータです」と返答する「レスポンス」の一往復で成り立っています。しかし、HTTPはデータを暗号化せずにそのまま送信するため、途中でデータを盗み見られるリスクがあります。そこで、通信データを暗号化して安全性を高めた「HTTPS」が、現在の多くのWebサイトで標準的に使われています。

具体例

あなたがWebブラウザで美味しいお店のブログを見ようとする場面を考えてみましょう。

  • あなたがブラウザのアドレス欄に「http://example.com/blog」と入力して決定を押すと、ブラウザが「そのブログのデータをください」というHTTPリクエストを送ります。
  • Webサーバーはリクエストを受け取り、サーバー内からブログの文章や画像のデータを準備して、HTTPレスポンスとしてブラウザへ送り返します。
  • ブラウザがそのデータを受け取って綺麗に画面に組み立てることで、私たちは美味しそうな料理の写真や記事を読むことができます。

もう少し詳しく

HTTPは、TCP/IPモデルのアプリケーション層で動作する通信プロトコルです。トランスポート層の「TCP」を使用し、通常はポート番号「80番」を利用してWeb通信を待ち受けます。HTTPの大きな特徴として「ステートレス(状態を保持しない)」という性質があります。これは、1回のリクエストとレスポンスの往復が完了すると、サーバーはクライアントの情報を全て忘れ、次回のリクエストを完全に独立した新しい接続として扱う仕組みです。しかし、これではショッピングカートの保存や、会員サイトのログイン状態維持ができません。そこで、Webサーバーがブラウザに対して「Cookie(クッキー)」と呼ばれる識別子を発行し、ブラウザが次回の通信時にこれをヘッダに載せて送信することで、状態管理(セッション維持)を行っています。

HTTPリクエストでは、ブラウザの行動を示す「HTTPメソッド」が使われます。代表的なメソッドは以下の通りです。

  • GET:Webページや画像などのデータをサーバーから取得します。
  • POST:ユーザーが入力したフォームデータなどをサーバーに送信・登録します。
  • PUT / DELETE:サーバー上の特定リソースを更新・削除します。

また、サーバーから返されるHTTPレスポンスには、処理結果を示す「HTTPステータスコード」という3桁の数字が含まれています。

  • 200番台(成功):正常にリクエストが完了したことを示します(例:200 OK)。
  • 300番台(リダイレクト):別のURLへ移動が必要であることを示します(例:301 Moved Permanently)。
  • 400番台(クライアントエラー):ブラウザ側の要求に問題があることを示します(例:404 Not Found:ファイルが存在しない)。
  • 500番台(サーバーエラー):サーバー内部で処理エラーが発生したことを示します(例:500 Internal Server Error)。

現在では、HTTPの暗号化バージョンである「HTTPS(HTTP over SSL/TLS)」が必須のセキュリティ標準となっています。HTTPSではポート番号「443番」を使用し、通信内容全体(ヘッダ含む)を暗号化することで盗聴や改ざん、なりすましを防いでいます。

試験でのポイント

試験対策としては、Web閲覧の基本プロトコルが「HTTP」であること、そして安全のために暗号化したものが「HTTPS」であるという位置付けの理解がまず求められます。暗号化通信を実現する「SSL/TLS」プロトコルの名称や、サーバーの真正性を証明する「デジタル証明書(SSL証明書)」についてのセキュリティ知識は頻出です。ポート番号の使い分け(HTTP:80、HTTPS:443)についても確実に覚えておきましょう。

また、レスポンスの成否を伝える「HTTPステータスコード」の分類(400番台がクライアント要因、500番台がサーバー要因など)や、Web上のセッション管理に用いられる技術である「Cookie」の役割とセキュリティリスク(漏洩時のセッションハイジャックなど)についても頻繁に出題されます。GETやPOSTといったメソッドの機能の違いも把握しておくことが大切です。

関連する用語

HTTPに関連する用語には、暗号化版である「HTTPS」、暗号化を支えるプロトコル「SSL/TLS」、状態管理のための「Cookie」、処理結果を示す「ステータスコード」、データの取得指定を行う「GETメソッド」、Webページの記述言語「HTML」などがあります。

読んだ内容を10問練習と実技で確認

記事で理解した用語を、StudyQuestの演習とクラウド実技ラボで定着させます。

10問練習 実技ラボ