HTTPとは

/システム

概要

HTTP(Hypertext Transfer Protocol)は、Webページにアクセスするためのプロトコルとして広く利用されています。

HTTPでは、HTTPメッセージによってクライアントとサーバ間のデータの受渡しを行います。クライアントからサーバへ送るデータをリクエスト、サーバからクライアントに返されるデータをレスポンスと呼びます。

メッセージは、メッセージヘッダとメッセージボディから構成されます。メッセージヘッダの先頭には、リクエストの場合はメソッド、レスポンスの場合はステータスが格納されます。

メソッド

主なメソッドの種類は以下になります。

GET Webページの取得
POST Webページの取得
HEAD リソースのヘッダ情報を取得
PUT Webページの内容を作成・置換
DELETE Webページの内容を削除
CONNECT プロキシにトンネリング通信を要求
TRACE クライアントからのリクエストをそまま通す

特にGETメソッドとPOSTメソッドの違いは以下になります。

項目 GETメソッド POSTメソッド
データの格納場所 URLの後ろに付加 メッセージボディにセットしサーバの標準入力を使用
データの種類 テキストのみ テキスト、バイナリ
データのサイズ URLエンコードした状態で255文字まで 制限なし
秘匿性 URLからデータの読取りや改ざんが可能 URLからデータは読取れない
アクセスログ 記録される 記録されない

ステータスコード

主なステータスの種類は以下になります。

200 OK リクエストが正常終了
401 Unauthorized アクセス権が無い、または認証に失敗
403 Forbidden 閲覧権限が無いファイルやフォルダ
404 Not Found Webページが見つからない
500 Internal Server Error サーバ内部でエラーが発生

ヘッダ情報

メッセージヘッダには、リクエストとレスポンスの内容に応じた情報が入ります。

Authorization 認証方式や認証情報(リクエスト)
Referer リンク元のURL情報(リクエスト)
User-Agent ブラウザの名称やバージョン情報(リクエスト)
Cookie クライアントがWebサーバに提示するクッキー(リクエスト)
Set-Cookie Webサーバがクライアントにセットするクッキー(レスポンス)
Content-Type 送信するファイルや文字セットの種類(リクエスト/レスポンス)
Server Webサーバのプログラム名やバージョン情報(レスポンス)
Location リダイレクトさせる先のURI情報(レスポンス)

リファラー

リファラー(Referrer、メッセージヘッダでは”Referer”と表記)は、リンク元のURLがセットされます。そのため、Web管理者はReferrerを調べることで、自分のサイトがどのリンクから参照されているか分析することができます。

Referrerにはパラメタを含めたURLがセットされるため、URLにセッション管理情報などをセットしている場合には、それらの情報が漏えいする可能性があります。

クッキー

クッキー(Cookie)とは、Webサーバが、アクセスしてきたクライアントに対しブラウザを通じで一時的にデータを書き込むことで、相手を識別したり、セッションの状態を管理する仕組みです。

クッキーは、WebサーバがHTTPヘッダにセットすることで発行され、それ以降、そのサーバへのアクセス時には毎回自動的にHTTPヘッダに付加されます。クッキーには、以下のような制限があります。

  • 1つのクッキーには最大4,096バイトのデータを記録可能
  • 1つのWebブラウザには最大300個のクッキーが保存可能
  • 1台のWebサーバは同じクライアントに対し最大20個のクッキーが発行可能

 

IT
アセスメント、セキュリティ、ネットワーク、システム
散策路TOP
力学、電磁気・相対論、熱・統計力学、量子力学、物性物理、機械学習、情報処理、金融、物理数学

 

タイトルとURLをコピーしました