/
704.txt
75 lines (57 loc) · 4.22 KB
/
704.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
[20] [DFN[[[HTTP/1.1]]]] は、 [[HTTP]] の3つ目の版です。多くの[[サーバー]]と[[クライアント]]により広く実装されています。
* 仕様書
[REFS[
- [9] [CITE@en[RFC 7230 - Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing]] ([TIME[2014-06-07 01:59:35 +09:00]] 版) <https://tools.ietf.org/html/rfc7230>
- [10] [CITE@en[RFC 7231 - Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content]] ([TIME[2014-06-07 01:55:45 +09:00]] 版) <https://tools.ietf.org/html/rfc7231>
- [11] [CITE@en[RFC 7232 - Hypertext Transfer Protocol (HTTP/1.1): Conditional Requests]] ([TIME[2014-06-07 01:59:31 +09:00]] 版) <https://tools.ietf.org/html/rfc7232>
- [12] [CITE@en[RFC 7233 - Hypertext Transfer Protocol (HTTP/1.1): Range Requests]] ([TIME[2014-06-07 01:59:31 +09:00]] 版) <https://tools.ietf.org/html/rfc7233>
- [13] [CITE@en[RFC 7234 - Hypertext Transfer Protocol (HTTP/1.1): Caching]] ([TIME[2014-06-07 01:58:49 +09:00]] 版) <https://tools.ietf.org/html/rfc7234>
- [14] [CITE@en[RFC 7235 - Hypertext Transfer Protocol (HTTP/1.1): Authentication]] ([TIME[2014-06-07 01:59:34 +09:00]] 版) <https://tools.ietf.org/html/rfc7235>
]REFS]
* HTTP/1.0 との差異
[23] [[HTTP/1.0]] と [[HTTP/1.1]] には次のような差異があります。
[FIG(list)[
- [24] [[プロトコルの版]]が異なります
- [25] [CODE(HTTP)[[[1xx]]]] とそれに関連する機能は [[HTTP/1.1]] でのみ利用可能です
- [26] [[HTTP/1.1]] では [CODE(HTTP)@en[[[Transfer-Encoding:]] [[chunked]]]] の実装が義務付けられています
- [27] [[鯖]]は [CODE(HTTP)@en[[[Host:]]]] [[ヘッダー]]のない [[HTTP/1.1]] [[要求]]に
[CODE(HTTP)[[[400]]]] [[応答]]を返さなければなりません
]FIG]
* 歴史
[22] [[HTTP/1.1]] は、 [[RFC 1945]] によって規定される [[HTTP/0.9]] や [[HTTP/1.0]]
と並行する第3の [[HTTP]] の版として [[IETF]] によって定義されました。
;; [[HTTP/1.1]] は [[HTTP/1.0]] の改訂版ではありますが、実際上も手続き上も
[[HTTP/0.9]] および [[HTTP/1.1]] を置き換えるものとはなっていません。
[[HTTP/1.1]] の開発開始から20年経った後も [[HTTP/0.9]] は実装されています。
** 第1次仕様 (RFC 2068, RFC 2069)
[REFS[
- [7] [[RFC 2068]]
- [8] [[RFC 2069]]
]REFS]
[28] 後に補足的な内容を含む [[RFC 2145]] が発行されています。
** 第2次仕様 (RFC 2616, RFC 2617)
[REFS[
- [5] [[RFC 2616]]
- [6] [[RFC 2617]]
- [3] ''HTTP/1.1 Specification Errata'' <http://world.std.com/~lawrence/http_errata.html>
]REFS]
** 第3次仕様 (RFC 7230-7237)
[REFS[
- [1]
[CITE[Revising RFC2616 - what's happening from Mark Nottingham on 2006-10-18 (ietf-http-wg@w3.org from October to December 2006)]] <http://lists.w3.org/Archives/Public/ietf-http-wg/2006OctDec/0046.html>
([[名無しさん]] [WEAK[2006-10-21 12:19:38 +00:00]])
- [2]
[CITE[RFC2616bis Issues]] <http://www.w3.org/Protocols/HTTP/1.1/rfc2616bis/issues/>
([[名無しさん]] [WEAK[2006-11-12 10:25:01 +00:00]])
]REFS]
[4] 2014年6月に [[RFC 7230]]-[[RFC 7237]] が発行されました。関連仕様として
[[RFC 7238]], [[RFC 7239]], [[RFC 7240]] も発行されています。
[21] これらの [[RFC]] は [[RFC 2616]] と [[RFC 2145]] を[[廃止]]して置き換える他、
[[RFC 2617]] と [[RFC 2817]] と [[RFC 2818]] の一部を[[更新]]するものとされています。
[REFS[
- [15] [CITE@en[RFC 7236 - Initial Hypertext Transfer Protocol (HTTP) Authentication Scheme Registrations]] ([TIME[2014-06-07 01:57:05 +09:00]] 版) <https://tools.ietf.org/html/rfc7236>
- [16] [CITE@en[RFC 7237 - Initial Hypertext Transfer Protocol (HTTP) Method Registrations]] ([TIME[2014-06-07 01:59:34 +09:00]] 版) <https://tools.ietf.org/html/rfc7237>
- [17] [CITE@en[RFC 7238 - The Hypertext Transfer Protocol Status Code 308 (Permanent Redirect)]] ([TIME[2014-06-07 01:57:48 +09:00]] 版) <https://tools.ietf.org/html/rfc7238>
- [18] [CITE@en[RFC 7239 - Forwarded HTTP Extension]] ([TIME[2014-06-07 01:59:37 +09:00]] 版) <https://tools.ietf.org/html/rfc7239>
- [19] [CITE@en[RFC 7240 - Prefer Header for HTTP]] ([TIME[2014-06-07 01:59:37 +09:00]] 版) <https://tools.ietf.org/html/rfc7240>
]REFS]