soma0822 / webserv

2 stars 1 forks source link

RFC 9112 #112

Open tkuramot opened 6 months ago

tkuramot commented 6 months ago

1. 概要

2. 目的

3. 提案内容

4. タスク

kaaaaakun commented 6 months ago

RFC 9112

要約

RFC 9112は、インターネット標準トラックの一部として、HTTP/1.1プロトコルの仕様を定義しています。この文書は、Web通信の基礎となるプロトコルのバージョン1.1に関する詳細な定義とガイドラインを提供し、メッセージの形式、接続の管理、エラーハンドリングなどをカバーしています。HTTP/1.1は、Webページのリクエストと配信に広く利用されており、インターネット上での情報交換の効率と信頼性を高めることを目的としています。関連するRFCには、RFC 7230(HTTP/1.1メッセージ構文とルーティング)、RFC 7231(HTTP/1.1セマンティクスとコンテンツ)、RFC 7232(HTTP/1.1条件付きリクエスト)、RFC 7233(HTTP/1.1レンジリクエスト)、RFC 7234(HTTP/1.1キャッシング)などがあります。RFC 9112はこれらのRFCを置き換え、HTTP/1.1に関する最新の標準を提供します。

kaaaaakun commented 6 months ago

1. Introduction

2. Message

2.2. Message Parsing

2.3. HTTP Version

kaaaaakun commented 6 months ago

3. Request Line

3.2.1. origin-form

The most common form of request-target is the "origin-form". origin-form = absolute-path [ "?" query ]

3.2.2. absolute-form 無視

authority-form 無視

The "authority-form" of request-target is only used for CONNECT requests (Section 9.3.6 of [HTTP]). It consists of only the uri-host and port number of the tunnel destination, separated by a colon (":"). リクエストターゲットの「権限形式」は、接続要求にのみ使用されます([HTTP]のセクション9.3.6)。これは、コロン( ":")で区切られたトンネルの目的地のURIホストとポート番号のみで構成されています。 authority-form = uri-host ":" port

3.2.4. asterisk-form 無視

The "asterisk-form" of request-target is only used for a server-wide OPTIONS request (Section 9.3.7 of [HTTP]). asterisk-form = "*"

kaaaaakun commented 6 months ago

4. Status Line

5. Field Syntax

5.2. Obsolete Line Folding

kaaaaakun commented 6 months ago

6. Message Body

6.1. Transfer-Encoding

6.2. Content-Length

6.3. Message Body Length

kaaaaakun commented 6 months ago

7. Transfer Codings

7.1. Chunked Transfer Coding

7.1.2. Chunked Trailer Section 非実装

7.3. Transfer Coding Registry

Registrations MUST include the following fields: 登録には、次のフィールドを含める必要があります。

* Name
* 名前
* Description
* 説明
* Pointer to specification text
* 仕様テキストへのポインタ

Names of transfer codings MUST NOT overlap with names of content codings (Section 8.4.1 of [HTTP]) unless the encoding transformation is identical, as is the case for the compression codings defined in Section 7.2. 転送コーディングの名前は、セクション7.2で定義されている圧縮コーディングの場合のように、エンコード変換が同一でない限り、コンテンツコーディングの名前([http]のセクション8.4.1)と重複してはなりません。

7.4. Negotiating Transfer Codings

memo

kaaaaakun commented 6 months ago

8. Handling Incomplete Messages 不完全なメッセージの処理

9. Connection Management 接続管理

9.2. Associating a Response to a Request

9.3.2. Pipelining パイプライン

A client that supports persistent connections MAY "pipeline" its requests (i.e., send multiple requests without waiting for each response).

9.6. Tear-down

The "close" connection option is defined as a signal that the sender will close this connection after completion of the response. A sender SHOULD send a Connection header field (Section 7.6.1 of [HTTP]) containing the "close" connection option when it intends to close a connection. For example,Connection: close

9.7. TLS Connection Initiation

Conceptually, HTTP/TLS is simply sending HTTP messages over a connection secured via TLS [TLS13].

9.8. TLS Connection Closure

version: The HTTP-version number of the enclosed message (e.g., "1.1"). If not present, the version can be determined from the first line of the body. msgtype: The message type -- "request" or "response". If not present, the type can be determined from the first line of the body. Encoding considerations: only "7bit", "8bit", or "binary" are permitted Security considerations: see Section 11 Interoperability considerations: N/A Published specification: RFC 9112 (see Section 10.1). Applications that use this media type: N/A Fragment identifier considerations: N/A Additional information: Magic number(s): N/A Deprecated alias names for this type: N/A File extension(s): N/A Macintosh file type code(s): N/A Person and email address to contact for further information: See Authors' Addresses section. Intended usage: COMMON Restrictions on usage: N/A Author: See Authors' Addresses section. Change controller: IESG