Network Working Group T. Berners-Lee
Request for Comments: 1945 mit / lcs
Category: INFORMATIONAL R. FIELDING
UC IRVINE
H. FryStyk
MIT / LCS
May 1996
Hypertext Transfer Protocol - HTTP / 1.0
About the next memo (Status of this Memo)
This paragraph text provides information for the Internet group and is not specified in any way. This paragraph text has no distribution limit.
IESG Note:
IESG is already paying attention to this agreement and looks forward to this document can be replaced by standard tracking documents as soon as possible.
Abstract
HTTP (Hypertext Transfer Protocol) is an Application Level Agreement that adapts to distributed hypermedia collaboration systems for flexibility and speed requirements. It is a general, stateless, object-based protocol, which can be used for a variety of purposes, such as Name Server and Distributed Object Management Systems. One feature of HTTP is that its data representation allows the system to build the data that is no longer depends on to transmit.
HTTP has been widely used on WWW since 1990. This specification reflects the general usage of "http / 1.0".
Table of Contents
Introduction .......................................... .............................. 4. 4
1.1 purpose (purpose) ......................................... ............................. 4
1.2 Terminology ........................................ ... .................................... 4
1.3 Overview ................................................. ............. 6
1.4 HTTP and MIME ................................................ .........…………………. 8
2. Sign conversion and general syntax (Notational Conventions and Generic Grammar) ... 8
2. Supplemental feedback method (Augment BNF) ....................................... ....…… 8
2.2 Basic Rules ...................................... ........ .... ..................... 10
3. Protocol parameters .................................. ...... ............ ........ 123.1 http version ....................... .................................................................. ........ ........ 12
3.2 Uniform Resource Identifiers .....................................
3.2.1 General Syntax .................................... ........ 14
3.2.2 HTTP URL ........................................... .. .......... .......................
Berners-Lee, et al informational [Page 1]
3.3 Date / Time format ................................................................... .......................................... 15
3.4 Character Sets ..................................... .................................................................................................
3.5 Content Codings .................................... .... .............................
3.6 Media Types ........................................ .............................................
3.6.1 Standards and Text Defaults ........... 19
3.6.2 Multipart Types ................................ ........ ......... 20
3.7 Product Logies ..................................................... .... .... .... .... .... 20
4. HTTP Message .................................... ...... .... .......... .......... ....... twenty one
4.1 Message type ............................................ .. .......... .......... .......... .......... ....... twenty one
4.2 Message Title .................................... ......... ................................................................................................................................................................................................................................................... 224.3 Header Fields ...................................... ........ ... ...... ........ twenty three
5. Request the command (request) ......................................... ...... .......... .......... .......... ......... twenty three
5.1 Request-line .................. .......... .............. ................... ......... twenty three
5.1.1 Method ............................................... ... .......... .......... .......... .......... .... twenty four
5.1.2 Request-URI .................................. ...... .... .......... .. twenty four
5.2 Request Header Fields .................................... ........ 25
6. Respond (response) .......................................... ..... ........................................................................................ 25
6.1 Status-line ................................... ... .....................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
6.1.1 Status code and explanation .................................. 26
6.2 response header structure ............................................................... ....... 28
7. Entity .......................................... ..... ........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................... ... 28
7.1 Entity Header Fields ............................................................... ........ .. 29
7.2 Entity Body ...................................... ......... ...................
7.2.1 Type (TYPE) ................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................. ....... ................................................................................................................................... .................................... ........ ......... ... 30
8. Method Definitions ..................................... ..... .......................... 30
8.1 get ............................................ ................................................................................................................................................................................................................................................... ..... 31
8.2 HEAD .......................................... ................................................................................................................................................................................................................................................... 31
8.3 post ............................................ .................................................................................. .... 31
9. Status code definitions ................................ ...... .......... ...... 32
9.1 Message 1xx (Information) ...................................... .......... .............. ........ 32
9.2 success 2xx (successful) .................................... ........ .. .......... ................. 32
9.3 Redirect 3xx (redirection) ........................................ .............................. 34
9.4 Client error 4XX (Client Error) .................................... .......... .. 35
9.5 server error 5XX (server error) ............................................... ..... .......... .... 37
10. Header Field Definitions ....................................... .............. 37
10.1 Allowing ......................................... .............................................................
10.2 Authorization .................................. ....... ................................ 3810.3 Content-encoding ........... ................................................ 39
10.4 Content-length .................................. ...... ............ ....... 39
10.5 Content Type (Content-Type) .................................. ...... .......... ......... 40
10.6 Date (date) ........................................... .......... .........................................
10.7 expires ......................................... ................................................ 41
10.88 from (from) ........................................... .. .......... ............................... 42
Berners-Lee, et al informational [Page 2]
10.9 When you change (if-modified-since) ................................. ..... ......... .... 42
10.10 Recent change (Last-modified) .................................... .... .................................................
10.11 Location ........................................................................................................................................................................................... ..... ...........................................
10.12 Note (PRAGMA) ........................................ ........................................................ 44
10.13 Submit (Referer) ........................................ .. ................................................................ 44
10.14 Server (Server) .......................................... ...............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
10.15 User Agent (User-Agent) .................................... .... .............. ........ 4610.16 WWW-authenticate .............. .................................................. 46
11. Access Authentication .................................. ........ .. .......... ........ 47
11.1 Basic Authentication Scheme .................................... 4.48
12. Safety considerations .............................................. .. .......... ........ 49
12.1 AUTHENTICATION OF Clients .................................. ...... .... 49
12.2 Safety Method (Safe Methods) ................................. ... .......... ........ 49
12.3 Disadvantages of server log information ............. 50
12.4 Sensitive Information Transfer .............................. 50
12.5 Attacks Based on File and Path Names. 51 Based on File Name and Path Name .. 51
13. Thanks (Acknowledgedgments) ........................................... .......... .................... 51
14. Reference (References) ..................................... ... ....... .................................................
15. Author's address (Authors' Addresses) ................................. ... ............................ 54
Appendix A. Internet Media Type Messages / HTTP ................................................................................................................................................................... .......... ........ 55
Appendix B. Tolerant Applications ........................................ ...... .. ........ 55
Appendix C. MIME Related ........................ .......... ........ ......... ................................................ 56C.1 Conversion Conversion to Canonical Form ...................... ....... 56
C.2 conversion date format .................................. 57
C.3 Content Code Introduction ............................ 57
C.4 No content-transfer-encoding .............................. 57
C.5 HTTP Title Domain (HTTP Header Fields in Multipart Body-Parts). 57
Appendix D. Additional features ........................................................................... ....... .......... 57
D.1 Additional Request Methods ...................................... 58
D.1.1 Put ........................................... .................................................... 58
D.1.2 delete ............................................... .......................................... 58
D.1.3 link .................................... ........ .. .................................................. 58
D.1.4 unlink .................................... .......... .......................................................... 58
D.2 Additional Head Structure Definition (Additional Header Field Definitions) ........................ 58
D.2.1 Accept .......................................... .................................................... 58
D.2.2 accept-charset ............................................................. .............................. 59
D.2.3 accept-encoding ....................................................................... .......... ........ .. 59
D.2.4 accept-language ........................................................................... ........................ 59d.2.5 content-language .................. ................................................................ 59
D.2.6 link .................................... ........ .. .......... .........................................
D.2.7 Mime-Version ..................................................................................... ..... .............................. 59
D.2.8 retroyal-after ......................................................................................... ....... ........................................ 60
D.2.9 Title .............................................. .......... ................................................................ 60
D.2.10 URI ...................................... ...... ........................................................ 60
Berners-Lee, et al information [Page 3]