0
0

More than 1 year has passed since last update.

「HTTP/1.0」についてのメモ

Last updated at Posted at 2022-07-11

「HTTP/1.0」とは

  • 1996年にRFC1945としてまとめられた。
  • リクエスト時にHTTPのバージョン情報が追加された。(例: echo -e "GET / HTTP/1.0\r\n" |nc localhost 80
  • リクエスト時のメソッドが「HTTP/0.9」の「GETのみ」から拡張された。
    • GET、HEAD、POST
      • POSTメソッドにより、クライアント側からサーバー側へのデータ送信が可能になった。(RFC1867)
    • PUT、DELETE(ブラウザでは未サポート)
    • LINK、UNLINK(HTTP/1.1で廃止)
  • リクエスト、応答時の両方でHTTPヘッダーが追加された。( HostUser-Agent など)
    • HTTPヘッダーの例
      • コンテントネゴシエーションというファイルの種類や表示言語を決定する仕組みで、以下のようなHTTPヘッダーを利用する。
        • Accept
        • Accept-Charset
        • Accept-Encoding
        • Accept-Language
        • Content-Type
        • Content-Language
        • Content-Encoding
      • 応答時に Content-Type ヘッダーを送信することで、HTML形式(テキストファイル)以外のコンテンツが利用可能になった。
      • リファラー( Referer )
        • ウェブサイトの到達経路をサーバー側が把握するためにクライアント側から送信する。
      • ユーザーエージェント( User-Agent )
        • クライアントがサーバーにリクエストを行う際のアプリケーション名。
    • 「HTTP/0.9」のレスポンスはHTMLファイルそのものだったが、「HTTP/1.0」ではレスポンスにヘッダーが追加されたため、ヘッダーとボディの間に空行を挟んで、その空行以降をすべてボディとする形式となった。(電子メールと同じ構造)
  • 応答時に3桁のステータスコードを送信するようになったことで、ステータスコード毎の処理分けが可能になった。(例: HTTP/1.0 200 OK
    • 100番台(情報レスポンス)
    • 200番台(成功レスポンス)
    • 300番台(リダイレクトメッセージ)
    • 400番台(クライアントエラーレスポンス)
    • 500番台(サーバーエラーレスポンス)
  • クッキー
  • 認証
    • Basic認証
    • Digest認証
  • セッション
  • プロキシ
    • HTTP通信を中継する仕組み。
  • キャッシュ
    • ダウンロード済みのコンテンツに変化がなければ、ダウンロードを抑制しパフォーマンスを向上させるメカニズム。

参考URL

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0