Changeset 1099 for draft-ietf-httpbis/06/p6-cache.html
- Timestamp:
- 01/01/11 17:23:02 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
draft-ietf-httpbis/06/p6-cache.html
r547 r1099 2 2 PUBLIC "-//W3C//DTD HTML 4.01//EN"> 3 3 <html lang="en"> 4 <head profile="http://www.w3.org/2006/03/hcard ">4 <head profile="http://www.w3.org/2006/03/hcard http://dublincore.org/documents/2008/08/04/dc-html/"> 5 5 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 6 6 <title>HTTP/1.1, part 6: Caching</title><style type="text/css" title="Xml2Rfc (sans serif)"> … … 40 40 } 41 41 42 dl.empty dd { 42 ul.empty { 43 list-style-type: none; 44 } 45 ul.empty li { 43 46 margin-top: .5em; 44 47 } … … 152 155 border-width: 1px; 153 156 } 157 table.left { 158 margin-right: auto; 159 } 160 table.right { 161 margin-left: auto; 162 } 163 table.center { 164 margin-left: auto; 165 margin-right: auto; 166 } 154 167 caption { 155 168 caption-side: bottom; … … 160 173 161 174 table.header { 175 border-spacing: 1px; 162 176 width: 95%; 163 177 font-size: 10pt; … … 171 185 white-space: nowrap; 172 186 } 173 t d.header{187 table.header td { 174 188 background-color: gray; 175 189 width: 50%; 176 190 } 177 t d.header a {191 table.header a { 178 192 color: white; 179 193 } … … 186 200 display:table-header-group; 187 201 } 188 ul.toc {202 ul.toc, ul.toc ul { 189 203 list-style: none; 190 204 margin-left: 1.5em; … … 192 206 padding-left: 0em; 193 207 } 194 li.tocline0{208 ul.toc li { 195 209 line-height: 150%; 196 210 font-weight: bold; … … 199 213 margin-right: 0em; 200 214 } 201 li.tocline1{215 ul.toc li li { 202 216 line-height: normal; 203 217 font-weight: normal; … … 206 220 margin-right: 0em; 207 221 } 208 li. tocline2{222 li.excluded { 209 223 font-size: 0pt; 210 224 } … … 212 226 margin-left: 0em; 213 227 } 214 ul.ind {228 ul.ind, ul.ind ul { 215 229 list-style: none; 216 230 margin-left: 1.5em; … … 219 233 page-break-before: avoid; 220 234 } 221 li.indline0{235 ul.ind li { 222 236 font-weight: bold; 223 237 line-height: 200%; … … 225 239 margin-right: 0em; 226 240 } 227 li.indline1{241 ul.ind li li { 228 242 font-weight: normal; 229 243 line-height: 150%; 230 244 margin-left: 0em; 231 245 margin-right: 0em; 246 } 247 .avoidbreak { 248 page-break-inside: avoid; 232 249 } 233 250 .bcp14 { … … 314 331 } 315 332 316 a.iref{333 ul.ind li li a { 317 334 content: target-counter(attr(href), page); 318 335 } … … 327 344 @page { 328 345 @top-left { 329 content: "I NTERNET DRAFT";346 content: "Internet-Draft"; 330 347 } 331 348 @top-right { … … 359 376 </style><link rel="Contents" href="#rfc.toc"> 360 377 <link rel="Author" href="#rfc.authors"> 361 <link rel="Copyright" href="#rfc.copyright ">378 <link rel="Copyright" href="#rfc.copyrightnotice"> 362 379 <link rel="Index" href="#rfc.index"> 363 380 <link rel="Chapter" title="1 Introduction" href="#rfc.section.1"> … … 372 389 <link rel="Appendix" title="B Collected ABNF" href="#rfc.section.B"> 373 390 <link rel="Appendix" title="C Change Log (to be removed by RFC Editor before publication)" href="#rfc.section.C"> 374 <meta name="generator" content="http://greenbytes.de/tech/webdav/rfc2629.xslt, Revision 1.426, 2009-03-07 10:31:10, XSLT vendor: SAXON 8.9 from Saxonica http://www.saxonica.com/"> 375 <link rel="schema.DC" href="http://purl.org/dc/elements/1.1/"> 376 <meta name="DC.Creator" content="Fielding, R."> 377 <meta name="DC.Creator" content="Gettys, J."> 378 <meta name="DC.Creator" content="Mogul, J."> 379 <meta name="DC.Creator" content="Frystyk, H."> 380 <meta name="DC.Creator" content="Masinter, L."> 381 <meta name="DC.Creator" content="Leach, P."> 382 <meta name="DC.Creator" content="Berners-Lee, T."> 383 <meta name="DC.Creator" content="Lafon, Y."> 384 <meta name="DC.Creator" content="Reschke, J. F."> 385 <meta name="DC.Identifier" content="urn:ietf:id:draft-ietf-httpbis-p6-cache-06"> 386 <meta name="DC.Date.Issued" scheme="ISO8601" content="2009-03"> 387 <meta name="DC.Relation.Replaces" content="urn:ietf:rfc:2616"> 388 <meta name="DC.Description.Abstract" content="The Hypertext Transfer Protocol (HTTP) is an application-level protocol for distributed, collaborative, hypermedia information systems. This document is Part 6 of the seven-part specification that defines the protocol referred to as "HTTP/1.1" and, taken together, obsoletes RFC 2616. Part 6 defines requirements on HTTP caches and the associated header fields that control cache behavior or indicate cacheable response messages."> 391 <meta name="generator" content="http://greenbytes.de/tech/webdav/rfc2629.xslt, Revision 1.537, 2010-12-30 14:21:59, XSLT vendor: SAXON 8.9 from Saxonica http://www.saxonica.com/"> 392 <link rel="schema.dct" href="http://purl.org/dc/terms/"> 393 <meta name="dct.creator" content="Fielding, R."> 394 <meta name="dct.creator" content="Gettys, J."> 395 <meta name="dct.creator" content="Mogul, J."> 396 <meta name="dct.creator" content="Frystyk, H."> 397 <meta name="dct.creator" content="Masinter, L."> 398 <meta name="dct.creator" content="Leach, P."> 399 <meta name="dct.creator" content="Berners-Lee, T."> 400 <meta name="dct.creator" content="Lafon, Y."> 401 <meta name="dct.creator" content="Reschke, J. F."> 402 <meta name="dct.identifier" content="urn:ietf:id:draft-ietf-httpbis-p6-cache-06"> 403 <meta name="dct.issued" scheme="ISO8601" content="2009-03-09"> 404 <meta name="dct.replaces" content="urn:ietf:rfc:2616"> 405 <meta name="dct.abstract" content="The Hypertext Transfer Protocol (HTTP) is an application-level protocol for distributed, collaborative, hypermedia information systems. This document is Part 6 of the seven-part specification that defines the protocol referred to as "HTTP/1.1" and, taken together, obsoletes RFC 2616. Part 6 defines requirements on HTTP caches and the associated header fields that control cache behavior or indicate cacheable response messages."> 406 <meta name="description" content="The Hypertext Transfer Protocol (HTTP) is an application-level protocol for distributed, collaborative, hypermedia information systems. This document is Part 6 of the seven-part specification that defines the protocol referred to as "HTTP/1.1" and, taken together, obsoletes RFC 2616. Part 6 defines requirements on HTTP caches and the associated header fields that control cache behavior or indicate cacheable response messages."> 389 407 </head> 390 408 <body> 391 <table summary="header information" class="header" border="0" cellpadding="1" cellspacing="1"> 392 <tr> 393 <td class="header left">HTTPbis Working Group</td> 394 <td class="header right">R. Fielding, Editor</td> 395 </tr> 396 <tr> 397 <td class="header left">Internet Draft</td> 398 <td class="header right">Day Software</td> 399 </tr> 400 <tr> 401 <td class="header left"> 402 <draft-ietf-httpbis-p6-cache-06> 403 404 </td> 405 <td class="header right">J. Gettys</td> 406 </tr> 407 <tr> 408 <td class="header left">Obsoletes: <a href="http://tools.ietf.org/html/rfc2616">2616</a> (if approved) 409 </td> 410 <td class="header right">One Laptop per Child</td> 411 </tr> 412 <tr> 413 <td class="header left">Intended status: Standards Track</td> 414 <td class="header right">J. Mogul</td> 415 </tr> 416 <tr> 417 <td class="header left">Expires: September 2009</td> 418 <td class="header right">HP</td> 419 </tr> 420 <tr> 421 <td class="header left"></td> 422 <td class="header right">H. Frystyk</td> 423 </tr> 424 <tr> 425 <td class="header left"></td> 426 <td class="header right">Microsoft</td> 427 </tr> 428 <tr> 429 <td class="header left"></td> 430 <td class="header right">L. Masinter</td> 431 </tr> 432 <tr> 433 <td class="header left"></td> 434 <td class="header right">Adobe Systems</td> 435 </tr> 436 <tr> 437 <td class="header left"></td> 438 <td class="header right">P. Leach</td> 439 </tr> 440 <tr> 441 <td class="header left"></td> 442 <td class="header right">Microsoft</td> 443 </tr> 444 <tr> 445 <td class="header left"></td> 446 <td class="header right">T. Berners-Lee</td> 447 </tr> 448 <tr> 449 <td class="header left"></td> 450 <td class="header right">W3C/MIT</td> 451 </tr> 452 <tr> 453 <td class="header left"></td> 454 <td class="header right">Y. Lafon, Editor</td> 455 </tr> 456 <tr> 457 <td class="header left"></td> 458 <td class="header right">W3C</td> 459 </tr> 460 <tr> 461 <td class="header left"></td> 462 <td class="header right">J. F. Reschke, Editor</td> 463 </tr> 464 <tr> 465 <td class="header left"></td> 466 <td class="header right">greenbytes</td> 467 </tr> 468 <tr> 469 <td class="header left"></td> 470 <td class="header right">March 9, 2009</td> 471 </tr> 409 <table class="header"> 410 <tbody> 411 <tr> 412 <td class="left">HTTPbis Working Group</td> 413 <td class="right">R. Fielding, Editor</td> 414 </tr> 415 <tr> 416 <td class="left">Internet-Draft</td> 417 <td class="right">Day Software</td> 418 </tr> 419 <tr> 420 <td class="left">Obsoletes: <a href="http://tools.ietf.org/html/rfc2616">2616</a> (if approved) 421 </td> 422 <td class="right">J. Gettys</td> 423 </tr> 424 <tr> 425 <td class="left">Intended status: Standards Track</td> 426 <td class="right">One Laptop per Child</td> 427 </tr> 428 <tr> 429 <td class="left">Expires: September 10, 2009</td> 430 <td class="right">J. Mogul</td> 431 </tr> 432 <tr> 433 <td class="left"></td> 434 <td class="right">HP</td> 435 </tr> 436 <tr> 437 <td class="left"></td> 438 <td class="right">H. Frystyk</td> 439 </tr> 440 <tr> 441 <td class="left"></td> 442 <td class="right">Microsoft</td> 443 </tr> 444 <tr> 445 <td class="left"></td> 446 <td class="right">L. Masinter</td> 447 </tr> 448 <tr> 449 <td class="left"></td> 450 <td class="right">Adobe Systems</td> 451 </tr> 452 <tr> 453 <td class="left"></td> 454 <td class="right">P. Leach</td> 455 </tr> 456 <tr> 457 <td class="left"></td> 458 <td class="right">Microsoft</td> 459 </tr> 460 <tr> 461 <td class="left"></td> 462 <td class="right">T. Berners-Lee</td> 463 </tr> 464 <tr> 465 <td class="left"></td> 466 <td class="right">W3C/MIT</td> 467 </tr> 468 <tr> 469 <td class="left"></td> 470 <td class="right">Y. Lafon, Editor</td> 471 </tr> 472 <tr> 473 <td class="left"></td> 474 <td class="right">W3C</td> 475 </tr> 476 <tr> 477 <td class="left"></td> 478 <td class="right">J. Reschke, Editor</td> 479 </tr> 480 <tr> 481 <td class="left"></td> 482 <td class="right">greenbytes</td> 483 </tr> 484 <tr> 485 <td class="left"></td> 486 <td class="right">March 9, 2009</td> 487 </tr> 488 </tbody> 472 489 </table> 473 490 <p class="title">HTTP/1.1, part 6: Caching<br><span class="filename">draft-ietf-httpbis-p6-cache-06</span></p> 474 491 <h1><a id="rfc.status" href="#rfc.status">Status of this Memo</a></h1> 475 <p>This Internet-Draft is submitted to IETF pursuant to, and in full conformance with, the provisions of BCP 78 and BCP 79. This476 document may contain material from IETF Documents or IETF Contributions published or made publicly available before November477 10, 2008. The person(s) controlling the copyright in some of this material may not have granted the IETF Trust the right to478 allow modifications of such material outside the IETF Standards Process. Without obtaining an adequate license from the person(s)479 co ntrolling the copyright in such materials, this document may not be modified outside the IETF Standards Process, and derivative480 works of it may not be created outside the IETF Standards Process, except to format it for publication as an RFC or to translate481 i t into languages other than English.492 <p>This Internet-Draft is submitted to IETF in full conformance with the provisions of BCP 78 and BCP 79. This document may contain 493 material from IETF Documents or IETF Contributions published or made publicly available before November 10, 2008. The person(s) 494 controlling the copyright in some of this material may not have granted the IETF Trust the right to allow modifications of 495 such material outside the IETF Standards Process. Without obtaining an adequate license from the person(s) controlling the 496 copyright in such materials, this document may not be modified outside the IETF Standards Process, and derivative works of 497 it may not be created outside the IETF Standards Process, except to format it for publication as an RFC or to translate it 498 into languages other than English. 482 499 </p> 483 500 <p>Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note … … 488 505 in progress”. 489 506 </p> 490 <p>The list of current Internet-Drafts can be accessed at <<a href="http://www.ietf.org/ietf/1id-abstracts.txt">http://www.ietf.org/ietf/1id-abstracts.txt</a>>.491 </p> 492 <p>The list of Internet-Draft Shadow Directories can be accessed at <<a href="http://www.ietf.org/shadow.html">http://www.ietf.org/shadow.html</a>>.493 </p> 494 <p>This Internet-Draft will expire in September2009.</p>507 <p>The list of current Internet-Drafts can be accessed at <a href="http://www.ietf.org/ietf/1id-abstracts.txt">http://www.ietf.org/ietf/1id-abstracts.txt</a>. 508 </p> 509 <p>The list of Internet-Draft Shadow Directories can be accessed at <a href="http://www.ietf.org/shadow.html">http://www.ietf.org/shadow.html</a>. 510 </p> 511 <p>This Internet-Draft will expire on September 10, 2009.</p> 495 512 <h1><a id="rfc.copyrightnotice" href="#rfc.copyrightnotice">Copyright Notice</a></h1> 496 513 <p>Copyright © 2009 IETF Trust and the persons identified as the document authors. All rights reserved.</p> … … 513 530 <h1 class="np" id="rfc.toc"><a href="#rfc.toc">Table of Contents</a></h1> 514 531 <ul class="toc"> 515 <li class="tocline0">1. <a href="#caching">Introduction</a><ul class="toc">516 <li class="tocline1">1.1 <a href="#intro.purpose">Purpose</a></li>517 <li class="tocline1">1.2 <a href="#intro.terminology">Terminology</a></li>518 <li class="tocline1">1.3 <a href="#intro.requirements">Requirements</a></li>519 <li class="tocline1">1.4 <a href="#notation">Syntax Notation</a><ul class="toc">520 <li class="tocline1">1.4.1 <a href="#core.rules">Core Rules</a></li>521 <li class="tocline1">1.4.2 <a href="#abnf.dependencies">ABNF Rules defined in other Parts of the Specification</a></li>532 <li>1. <a href="#caching">Introduction</a><ul> 533 <li>1.1 <a href="#intro.purpose">Purpose</a></li> 534 <li>1.2 <a href="#intro.terminology">Terminology</a></li> 535 <li>1.3 <a href="#intro.requirements">Requirements</a></li> 536 <li>1.4 <a href="#notation">Syntax Notation</a><ul> 537 <li>1.4.1 <a href="#core.rules">Core Rules</a></li> 538 <li>1.4.2 <a href="#abnf.dependencies">ABNF Rules defined in other Parts of the Specification</a></li> 522 539 </ul> 523 540 </li> 524 541 </ul> 525 542 </li> 526 <li class="tocline0">2. <a href="#caching.overview">Cache Operation</a><ul class="toc">527 <li class="tocline1">2.1 <a href="#response.cacheability">Response Cacheability</a><ul class="toc">528 <li class="tocline1">2.1.1 <a href="#errors.or.incomplete.response.cache.behavior">Storing Partial and Incomplete Responses</a></li>543 <li>2. <a href="#caching.overview">Cache Operation</a><ul> 544 <li>2.1 <a href="#response.cacheability">Response Cacheability</a><ul> 545 <li>2.1.1 <a href="#errors.or.incomplete.response.cache.behavior">Storing Partial and Incomplete Responses</a></li> 529 546 </ul> 530 547 </li> 531 <li class="tocline1">2.2 <a href="#constructing.responses.from.caches">Constructing Responses from Caches</a></li>532 <li class="tocline1">2.3 <a href="#expiration.model">Freshness Model</a><ul class="toc">533 <li class="tocline1">2.3.1 <a href="#calculating.freshness.lifetime">Calculating Freshness Lifetime</a><ul class="toc">534 <li class="tocline1">2.3.1.1 <a href="#heuristic.freshness">Calculating Heuristic Freshness</a></li>548 <li>2.2 <a href="#constructing.responses.from.caches">Constructing Responses from Caches</a></li> 549 <li>2.3 <a href="#expiration.model">Freshness Model</a><ul> 550 <li>2.3.1 <a href="#calculating.freshness.lifetime">Calculating Freshness Lifetime</a><ul> 551 <li>2.3.1.1 <a href="#heuristic.freshness">Calculating Heuristic Freshness</a></li> 535 552 </ul> 536 553 </li> 537 <li class="tocline1">2.3.2 <a href="#age.calculations">Calculating Age</a></li>538 <li class="tocline1">2.3.3 <a href="#serving.stale.responses">Serving Stale Responses</a></li>554 <li>2.3.2 <a href="#age.calculations">Calculating Age</a></li> 555 <li>2.3.3 <a href="#serving.stale.responses">Serving Stale Responses</a></li> 539 556 </ul> 540 557 </li> 541 <li class="tocline1">2.4 <a href="#validation.model">Validation Model</a></li>542 <li class="tocline1">2.5 <a href="#invalidation.after.updates.or.deletions">Request Methods that Invalidate</a></li>543 <li class="tocline1">2.6 <a href="#caching.negotiated.responses">Caching Negotiated Responses</a></li>544 <li class="tocline1">2.7 <a href="#combining.headers">Combining Responses</a></li>558 <li>2.4 <a href="#validation.model">Validation Model</a></li> 559 <li>2.5 <a href="#invalidation.after.updates.or.deletions">Request Methods that Invalidate</a></li> 560 <li>2.6 <a href="#caching.negotiated.responses">Caching Negotiated Responses</a></li> 561 <li>2.7 <a href="#combining.headers">Combining Responses</a></li> 545 562 </ul> 546 563 </li> 547 <li class="tocline0">3. <a href="#header.fields">Header Field Definitions</a><ul class="toc">548 <li class="tocline1">3.1 <a href="#header.age">Age</a></li>549 <li class="tocline1">3.2 <a href="#header.cache-control">Cache-Control</a><ul class="toc">550 <li class="tocline1">3.2.1 <a href="#cache-request-directive">Request Cache-Control Directives</a></li>551 <li class="tocline1">3.2.2 <a href="#cache-response-directive">Response Cache-Control Directives</a></li>552 <li class="tocline1">3.2.3 <a href="#cache.control.extensions">Cache Control Extensions</a></li>564 <li>3. <a href="#header.fields">Header Field Definitions</a><ul> 565 <li>3.1 <a href="#header.age">Age</a></li> 566 <li>3.2 <a href="#header.cache-control">Cache-Control</a><ul> 567 <li>3.2.1 <a href="#cache-request-directive">Request Cache-Control Directives</a></li> 568 <li>3.2.2 <a href="#cache-response-directive">Response Cache-Control Directives</a></li> 569 <li>3.2.3 <a href="#cache.control.extensions">Cache Control Extensions</a></li> 553 570 </ul> 554 571 </li> 555 <li class="tocline1">3.3 <a href="#header.expires">Expires</a></li>556 <li class="tocline1">3.4 <a href="#header.pragma">Pragma</a></li>557 <li class="tocline1">3.5 <a href="#header.vary">Vary</a></li>558 <li class="tocline1">3.6 <a href="#header.warning">Warning</a></li>572 <li>3.3 <a href="#header.expires">Expires</a></li> 573 <li>3.4 <a href="#header.pragma">Pragma</a></li> 574 <li>3.5 <a href="#header.vary">Vary</a></li> 575 <li>3.6 <a href="#header.warning">Warning</a></li> 559 576 </ul> 560 577 </li> 561 <li class="tocline0">4. <a href="#history.lists">History Lists</a></li>562 <li class="tocline0">5. <a href="#IANA.considerations">IANA Considerations</a><ul class="toc">563 <li class="tocline1">5.1 <a href="#message.header.registration">Message Header Registration</a></li>578 <li>4. <a href="#history.lists">History Lists</a></li> 579 <li>5. <a href="#IANA.considerations">IANA Considerations</a><ul> 580 <li>5.1 <a href="#message.header.registration">Message Header Registration</a></li> 564 581 </ul> 565 582 </li> 566 <li class="tocline0">6. <a href="#security.considerations">Security Considerations</a></li>567 <li class="tocline0">7. <a href="#ack">Acknowledgments</a></li>568 <li class="tocline0">8. <a href="#rfc.references">References</a><ul class="toc">569 <li class="tocline1">8.1 <a href="#rfc.references.1">Normative References</a></li>570 <li class="tocline1">8.2 <a href="#rfc.references.2">Informative References</a></li>583 <li>6. <a href="#security.considerations">Security Considerations</a></li> 584 <li>7. <a href="#ack">Acknowledgments</a></li> 585 <li>8. <a href="#rfc.references">References</a><ul> 586 <li>8.1 <a href="#rfc.references.1">Normative References</a></li> 587 <li>8.2 <a href="#rfc.references.2">Informative References</a></li> 571 588 </ul> 572 589 </li> 573 <li class="tocline0"><a href="#rfc.authors">Authors' Addresses</a></li>574 <li class="tocline0">A. <a href="#compatibility">Compatibility with Previous Versions</a><ul class="toc">575 <li class="tocline1">A.1 <a href="#changes.from.rfc.2068">Changes from RFC 2068</a></li>576 <li class="tocline1">A.2 <a href="#changes.from.rfc.2616">Changes from RFC 2616</a></li>590 <li><a href="#rfc.authors">Authors' Addresses</a></li> 591 <li>A. <a href="#compatibility">Compatibility with Previous Versions</a><ul> 592 <li>A.1 <a href="#changes.from.rfc.2068">Changes from RFC 2068</a></li> 593 <li>A.2 <a href="#changes.from.rfc.2616">Changes from RFC 2616</a></li> 577 594 </ul> 578 595 </li> 579 <li class="tocline0">B. <a href="#collected.abnf">Collected ABNF</a></li>580 <li class="tocline0">C. <a href="#change.log">Change Log (to be removed by RFC Editor before publication)</a><ul class="toc">581 <li class="tocline1">C.1 <a href="#rfc.section.C.1">Since RFC2616</a></li>582 <li class="tocline1">C.2 <a href="#rfc.section.C.2">Since draft-ietf-httpbis-p6-cache-00</a></li>583 <li class="tocline1">C.3 <a href="#rfc.section.C.3">Since draft-ietf-httpbis-p6-cache-01</a></li>584 <li class="tocline1">C.4 <a href="#changes.since.02">Since draft-ietf-httpbis-p6-cache-02</a></li>585 <li class="tocline1">C.5 <a href="#changes.since.03">Since draft-ietf-httpbis-p6-cache-03</a></li>586 <li class="tocline1">C.6 <a href="#changes.since.04">Since draft-ietf-httpbis-p6-cache-04</a></li>587 <li class="tocline1">C.7 <a href="#changes.since.05">Since draft-ietf-httpbis-p6-cache-05</a></li>596 <li>B. <a href="#collected.abnf">Collected ABNF</a></li> 597 <li>C. <a href="#change.log">Change Log (to be removed by RFC Editor before publication)</a><ul> 598 <li>C.1 <a href="#rfc.section.C.1">Since RFC2616</a></li> 599 <li>C.2 <a href="#rfc.section.C.2">Since draft-ietf-httpbis-p6-cache-00</a></li> 600 <li>C.3 <a href="#rfc.section.C.3">Since draft-ietf-httpbis-p6-cache-01</a></li> 601 <li>C.4 <a href="#changes.since.02">Since draft-ietf-httpbis-p6-cache-02</a></li> 602 <li>C.5 <a href="#changes.since.03">Since draft-ietf-httpbis-p6-cache-03</a></li> 603 <li>C.6 <a href="#changes.since.04">Since draft-ietf-httpbis-p6-cache-04</a></li> 604 <li>C.7 <a href="#changes.since.05">Since draft-ietf-httpbis-p6-cache-05</a></li> 588 605 </ul> 589 606 </li> 590 <li class="tocline0"><a href="#rfc.index">Index</a></li>607 <li><a href="#rfc.index">Index</a></li> 591 608 </ul> 592 609 <h1 id="rfc.section.1" class="np"><a href="#rfc.section.1">1.</a> <a id="caching" href="#caching">Introduction</a></h1> … … 609 626 <p id="rfc.section.1.2.p.2"> <span id="rfc.iref.c.2"></span> <dfn>cacheable</dfn> 610 627 </p> 611 < dl class="empty">612 < dd>A response is cacheable if a cache is allowed to store a copy of the response message for use in answering subsequent requests.628 <ul class="empty"> 629 <li>A response is cacheable if a cache is allowed to store a copy of the response message for use in answering subsequent requests. 613 630 Even when a response is cacheable, there may be additional constraints on whether a cache can use the cached copy to satisfy 614 631 a particular request. 615 </ dd>616 </ dl>632 </li> 633 </ul> 617 634 <p id="rfc.section.1.2.p.3"> <span id="rfc.iref.e.1"></span> <dfn>explicit expiration time</dfn> 618 635 </p> 619 < dl class="empty">620 < dd>The time at which the origin server intends that an entity should no longer be returned by a cache without further validation.</dd>621 </ dl>636 <ul class="empty"> 637 <li>The time at which the origin server intends that an entity should no longer be returned by a cache without further validation.</li> 638 </ul> 622 639 <p id="rfc.section.1.2.p.4"> <span id="rfc.iref.h.1"></span> <dfn>heuristic expiration time</dfn> 623 640 </p> 624 < dl class="empty">625 < dd>An expiration time assigned by a cache when no explicit expiration time is available.</dd>626 </ dl>641 <ul class="empty"> 642 <li>An expiration time assigned by a cache when no explicit expiration time is available.</li> 643 </ul> 627 644 <p id="rfc.section.1.2.p.5"> <span id="rfc.iref.a.1"></span> <dfn>age</dfn> 628 645 </p> 629 < dl class="empty">630 < dd>The age of a response is the time since it was sent by, or successfully validated with, the origin server.</dd>631 </ dl>646 <ul class="empty"> 647 <li>The age of a response is the time since it was sent by, or successfully validated with, the origin server.</li> 648 </ul> 632 649 <p id="rfc.section.1.2.p.6"> <span id="rfc.iref.f.1"></span> <dfn>first-hand</dfn> 633 650 </p> 634 < dl class="empty">635 < dd>A response is first-hand if the freshness model is not in use; i.e., its age is 0.</dd>636 </ dl>651 <ul class="empty"> 652 <li>A response is first-hand if the freshness model is not in use; i.e., its age is 0.</li> 653 </ul> 637 654 <p id="rfc.section.1.2.p.7"> <span id="rfc.iref.f.2"></span> <dfn>freshness lifetime</dfn> 638 655 </p> 639 < dl class="empty">640 < dd>The length of time between the generation of a response and its expiration time.</dd>641 </ dl>656 <ul class="empty"> 657 <li>The length of time between the generation of a response and its expiration time.</li> 658 </ul> 642 659 <p id="rfc.section.1.2.p.8"> <span id="rfc.iref.f.3"></span> <dfn>fresh</dfn> 643 660 </p> 644 < dl class="empty">645 < dd>A response is fresh if its age has not yet exceeded its freshness lifetime.</dd>646 </ dl>661 <ul class="empty"> 662 <li>A response is fresh if its age has not yet exceeded its freshness lifetime.</li> 663 </ul> 647 664 <p id="rfc.section.1.2.p.9"> <span id="rfc.iref.s.1"></span> <dfn>stale</dfn> 648 665 </p> 649 < dl class="empty">650 < dd>A response is stale if its age has passed its freshness lifetime (either explicit or heuristic).</dd>651 </ dl>666 <ul class="empty"> 667 <li>A response is stale if its age has passed its freshness lifetime (either explicit or heuristic).</li> 668 </ul> 652 669 <p id="rfc.section.1.2.p.10"> <span id="rfc.iref.v.1"></span> <dfn>validator</dfn> 653 670 </p> 654 < dl class="empty">655 < dd>A protocol element (e.g., an entity tag or a Last-Modified time) that is used to find out whether a stored response is an671 <ul class="empty"> 672 <li>A protocol element (e.g., an entity tag or a Last-Modified time) that is used to find out whether a stored response is an 656 673 equivalent copy of an entity. 657 </ dd>658 </ dl>674 </li> 675 </ul> 659 676 <div id="shared.and.non-shared.caches"> 660 677 <p id="rfc.section.1.2.p.11"> <span id="rfc.iref.v.2"></span> <dfn>shared cache</dfn> 661 678 </p> 662 < dl class="empty">663 < dd>A cache that is accessible to more than one user. A non-shared cache is dedicated to a single user.</dd>664 </ dl>679 <ul class="empty"> 680 <li>A cache that is accessible to more than one user. A non-shared cache is dedicated to a single user.</li> 681 </ul> 665 682 </div> 666 683 <h2 id="rfc.section.1.3"><a href="#rfc.section.1.3">1.3</a> <a id="intro.requirements" href="#intro.requirements">Requirements</a></h2> … … 718 735 </p> 719 736 <ul> 720 <li>The presented Request-URI and that of the stored response match (see <span class="comment" >[rfc.comment.1: TBD]</span>), and737 <li>The presented Request-URI and that of the stored response match (see <span class="comment" id="rfc.comment.1">[<a href="#rfc.comment.1" class="smpl">rfc.comment.1</a>: TBD]</span>), and 721 738 </li> 722 739 <li>the request method associated with the stored response allows it to be used for the presented request, and</li> … … 736 753 </li> 737 754 </ul> 738 <p id="rfc.section.2.2.p.2"> <span class="comment" >[rfc.comment.2: TODO: define method cacheability for GET, HEAD and POST in p2-semantics.]</span>739 </p> 740 <p id="rfc.section.2.2.p.3">When a stored response is used to satisfy a request, caches <em class="bcp14">MUST</em> include a single Age header field <a href="#header.age" id="rfc.xref.header.age.1" title="Age">Section 3.1</a> in the response with a value equal to the stored response's current_age; see <a href="#age.calculations" title="Calculating Age">Section 2.3.2</a>. <span class="comment" >[rfc.comment.3: DISCUSS: this currently includes successfully validated responses.]</span>755 <p id="rfc.section.2.2.p.2"> <span class="comment" id="rfc.comment.2">[<a href="#rfc.comment.2" class="smpl">rfc.comment.2</a>: TODO: define method cacheability for GET, HEAD and POST in p2-semantics.]</span> 756 </p> 757 <p id="rfc.section.2.2.p.3">When a stored response is used to satisfy a request, caches <em class="bcp14">MUST</em> include a single Age header field <a href="#header.age" id="rfc.xref.header.age.1" title="Age">Section 3.1</a> in the response with a value equal to the stored response's current_age; see <a href="#age.calculations" title="Calculating Age">Section 2.3.2</a>. <span class="comment" id="rfc.comment.3">[<a href="#rfc.comment.3" class="smpl">rfc.comment.3</a>: DISCUSS: this currently includes successfully validated responses.]</span> 741 758 </p> 742 759 <p id="rfc.section.2.2.p.4">Requests with methods that are unsafe (<a href="p2-semantics.html#safe.methods" title="Safe Methods">Section 7.1.1</a> of <a href="#Part2" id="rfc.xref.Part2.1"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>) <em class="bcp14">MUST</em> be written through the cache to the origin server; i.e., A cache must not reply to such a request before having forwarded … … 748 765 forward a request with "Cache-Control: max-age=0" or "Cache-Control: no-cache" to disambiguate which response to use. 749 766 </p> 750 <p id="rfc.section.2.2.p.7"> <span class="comment" >[rfc.comment.4: TODO: end-to-end and hop-by-hop headers, non-modifiable headers removed; re-spec in p1]</span>767 <p id="rfc.section.2.2.p.7"> <span class="comment" id="rfc.comment.4">[<a href="#rfc.comment.4" class="smpl">rfc.comment.4</a>: TODO: end-to-end and hop-by-hop headers, non-modifiable headers removed; re-spec in p1]</span> 751 768 </p> 752 769 <h2 id="rfc.section.2.3"><a href="#rfc.section.2.3">2.3</a> <a id="expiration.model" href="#expiration.model">Freshness Model</a></h2> … … 759 776 </p> 760 777 <p id="rfc.section.2.3.p.3">If an origin server wishes to force a cache to validate every request, it can assign an explicit expiration time in the past. 761 This means that the response is always stale, so that caches should validate it before using it for subsequent requests. <span class="comment" >[rfc.comment.5: This wording may cause confusion, because the response may still be served stale.]</span>778 This means that the response is always stale, so that caches should validate it before using it for subsequent requests. <span class="comment" id="rfc.comment.5">[<a href="#rfc.comment.5" class="smpl">rfc.comment.5</a>: This wording may cause confusion, because the response may still be served stale.]</span> 762 779 </p> 763 780 <p id="rfc.section.2.3.p.4">Since origin servers do not always provide explicit expiration times, HTTP caches may also assign heuristic expiration times … … 773 790 with the effect of either increasing or loosening constraints on freshness. See <a href="#cache-request-directive" title="Request Cache-Control Directives">Section 3.2.1</a>. 774 791 </p> 775 <p id="rfc.section.2.3.p.8"> <span class="comment" >[rfc.comment.6: ISSUE: there are not requirements directly applying to cache-request-directives and freshness.]</span>792 <p id="rfc.section.2.3.p.8"> <span class="comment" id="rfc.comment.6">[<a href="#rfc.comment.6" class="smpl">rfc.comment.6</a>: ISSUE: there are not requirements directly applying to cache-request-directives and freshness.]</span> 776 793 </p> 777 794 <p id="rfc.section.2.3.p.9">Note that freshness applies only to cache operation; it cannot be used to force a user agent to refresh its display or reload … … 800 817 <p id="rfc.section.2.3.1.1.p.3">Also, if the response has a Last-Modified header (<a href="p4-conditional.html#header.last-modified" title="Last-Modified">Section 6.6</a> of <a href="#Part4" id="rfc.xref.Part4.1"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a>), the heuristic expiration value <em class="bcp14">SHOULD</em> be no more than some fraction of the interval since that time. A typical setting of this fraction might be 10%. 801 818 </p> 802 <p id="rfc.section.2.3.1.1.p.4"> <span class="comment" >[rfc.comment.7: REVIEW: took away HTTP/1.0 query string heuristic uncacheability.]</span>819 <p id="rfc.section.2.3.1.1.p.4"> <span class="comment" id="rfc.comment.7">[<a href="#rfc.comment.7" class="smpl">rfc.comment.7</a>: REVIEW: took away HTTP/1.0 query string heuristic uncacheability.]</span> 803 820 </p> 804 821 <h3 id="rfc.section.2.3.2"><a href="#rfc.section.2.3.2">2.3.2</a> <a id="age.calculations" href="#age.calculations">Calculating Age</a></h3> … … 873 890 </p> 874 891 <p id="rfc.section.2.4.p.4">If instead the cache receives a full response (i.e., one with a response body), it is used to satisfy the request and replace 875 the stored response. <span class="comment" >[rfc.comment.8: Should there be a requirement here?]</span>892 the stored response. <span class="comment" id="rfc.comment.8">[<a href="#rfc.comment.8" class="smpl">rfc.comment.8</a>: Should there be a requirement here?]</span> 876 893 </p> 877 894 <p id="rfc.section.2.4.p.5">If a cache receives a 5xx response while attempting to validate a response, it <em class="bcp14">MAY</em> either forward this response to the requesting client, or act as if the server failed to respond. In the latter case, it <em class="bcp14">MAY</em> return a previously stored response (which <em class="bcp14">SHOULD</em> include the 111 warn-code; see <a href="#header.warning" id="rfc.xref.header.warning.2" title="Warning">Section 3.6</a>) unless the stored response includes the "must-revalidate" cache directive (see <a href="#serving.stale.responses" title="Serving Stale Responses">Section 2.3.3</a>). … … 890 907 attacks. 891 908 </p> 892 <p id="rfc.section.2.5.p.4"> <span class="comment" >[rfc.comment.9: TODO: "host part" needs to be specified better.]</span>909 <p id="rfc.section.2.5.p.4"> <span class="comment" id="rfc.comment.9">[<a href="#rfc.comment.9" class="smpl">rfc.comment.9</a>: TODO: "host part" needs to be specified better.]</span> 893 910 </p> 894 911 <p id="rfc.section.2.5.p.5">A cache that passes through requests for methods it does not understand <em class="bcp14">SHOULD</em> invalidate the Request-URI. … … 900 917 change at the origin server might not have gone through the cache where a response is stored. 901 918 </p> 902 <p id="rfc.section.2.5.p.8"> <span class="comment" >[rfc.comment.10: TODO: specify that only successful (2xx, 3xx?) responses invalidate.]</span>919 <p id="rfc.section.2.5.p.8"> <span class="comment" id="rfc.comment.10">[<a href="#rfc.comment.10" class="smpl">rfc.comment.10</a>: TODO: specify that only successful (2xx, 3xx?) responses invalidate.]</span> 903 920 </p> 904 921 <h2 id="rfc.section.2.6"><a href="#rfc.section.2.6">2.6</a> <a id="caching.negotiated.responses" href="#caching.negotiated.responses">Caching Negotiated Responses</a></h2> … … 909 926 </p> 910 927 <p id="rfc.section.2.6.p.3">The selecting request-headers from two requests are defined to match if and only if the selecting request-headers in the first 911 request can be transformed to the selecting request-headers in the second request by adding or removing linear white space <span class="comment" >[rfc.comment.11: [ref]]</span> at places where this is allowed by the corresponding ABNF, and/or combining multiple message-header fields with the same field912 name following the rules about message headers in <a href="p1-messaging.html#message.headers" title="Message Headers">Section 4.2</a> of <a href="#Part1" id="rfc.xref.Part1.12"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. <span class="comment" >[rfc.comment.12: DISCUSS: header-specific canonicalisation]</span>928 request can be transformed to the selecting request-headers in the second request by adding or removing linear white space <span class="comment" id="rfc.comment.11">[<a href="#rfc.comment.11" class="smpl">rfc.comment.11</a>: [ref]]</span> at places where this is allowed by the corresponding ABNF, and/or combining multiple message-header fields with the same field 929 name following the rules about message headers in <a href="p1-messaging.html#message.headers" title="Message Headers">Section 4.2</a> of <a href="#Part1" id="rfc.xref.Part1.12"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. <span class="comment" id="rfc.comment.12">[<a href="#rfc.comment.12" class="smpl">rfc.comment.12</a>: DISCUSS: header-specific canonicalisation]</span> 913 930 </p> 914 931 <p id="rfc.section.2.6.p.4">A Vary header field-value of "*" always fails to match, and subsequent requests to that resource can only be properly interpreted … … 923 940 <p id="rfc.section.2.6.p.7">If a cache receives a successful response whose Content-Location field matches that of an existing stored response for the 924 941 same Request-URI, whose entity-tag differs from that of the existing stored response, and whose Date is more recent than that 925 of the existing response, the existing response <em class="bcp14">SHOULD NOT</em> be returned in response to future requests and <em class="bcp14">SHOULD</em> be deleted from the cache.<span class="comment" >[rfc.comment.13: DISCUSS: Not sure if this is necessary.]</span>942 of the existing response, the existing response <em class="bcp14">SHOULD NOT</em> be returned in response to future requests and <em class="bcp14">SHOULD</em> be deleted from the cache.<span class="comment" id="rfc.comment.13">[<a href="#rfc.comment.13" class="smpl">rfc.comment.13</a>: DISCUSS: Not sure if this is necessary.]</span> 926 943 </p> 927 944 <h2 id="rfc.section.2.7"><a href="#rfc.section.2.7">2.7</a> <a id="combining.headers" href="#combining.headers">Combining Responses</a></h2> … … 946 963 all such old headers <em class="bcp14">MUST</em> be replaced. It <em class="bcp14">MAY</em> store the combined entity-body. 947 964 </p> 948 <p id="rfc.section.2.7.p.5"> <span class="comment" >[rfc.comment.14: ISSUE: discuss how to handle HEAD updates]</span>965 <p id="rfc.section.2.7.p.5"> <span class="comment" id="rfc.comment.14">[<a href="#rfc.comment.14" class="smpl">rfc.comment.14</a>: ISSUE: discuss how to handle HEAD updates]</span> 949 966 </p> 950 967 <h1 id="rfc.section.3"><a href="#rfc.section.3">3.</a> <a id="header.fields" href="#header.fields">Header Field Definitions</a></h1> … … 978 995 in a request does not imply that the same directive is to be given in the response. 979 996 </p> 980 <div class="note" >997 <div class="note" id="rfc.section.3.2.p.2"> 981 998 <p>Note that HTTP/1.0 caches might not implement Cache-Control and might only implement Pragma: no-cache (see <a href="#header.pragma" id="rfc.xref.header.pragma.2" title="Pragma">Section 3.4</a>). 982 999 </p> … … 1005 1022 </pre><p id="rfc.section.3.2.1.p.2"> <span id="rfc.iref.c.4"></span> <span id="rfc.iref.n.1"></span> no-cache 1006 1023 </p> 1007 < dl class="empty">1008 < dd>The no-cache request directive indicates that a stored response <em class="bcp14">MUST NOT</em> be used to satisfy the request without successful validation on the origin server.1009 </ dd>1010 </ dl>1024 <ul class="empty"> 1025 <li>The no-cache request directive indicates that a stored response <em class="bcp14">MUST NOT</em> be used to satisfy the request without successful validation on the origin server. 1026 </li> 1027 </ul> 1011 1028 <p id="rfc.section.3.2.1.p.3"> <span id="rfc.iref.c.5"></span> <span id="rfc.iref.n.2"></span> no-store 1012 1029 </p> 1013 < dl class="empty">1014 < dd>The no-store request directive indicates that a cache <em class="bcp14">MUST NOT</em> store any part of either this request or any response to it. This directive applies to both non-shared and shared caches.1030 <ul class="empty"> 1031 <li>The no-store request directive indicates that a cache <em class="bcp14">MUST NOT</em> store any part of either this request or any response to it. This directive applies to both non-shared and shared caches. 1015 1032 "<em class="bcp14">MUST NOT</em> store" in this context means that the cache <em class="bcp14">MUST NOT</em> intentionally store the information in non-volatile storage, and <em class="bcp14">MUST</em> make a best-effort attempt to remove the information from volatile storage as promptly as possible after forwarding it. 1016 </ dd>1017 < dd>This directive is NOT a reliable or sufficient mechanism for ensuring privacy. In particular, malicious or compromised caches1033 </li> 1034 <li>This directive is NOT a reliable or sufficient mechanism for ensuring privacy. In particular, malicious or compromised caches 1018 1035 might not recognize or obey this directive, and communications networks may be vulnerable to eavesdropping. 1019 </ dd>1020 </ dl>1036 </li> 1037 </ul> 1021 1038 <p id="rfc.section.3.2.1.p.4"> <span id="rfc.iref.c.6"></span> <span id="rfc.iref.m.1"></span> max-age 1022 1039 </p> 1023 < dl class="empty">1024 < dd>The max-age request directive indicates that the client is willing to accept a response whose age is no greater than the specified1040 <ul class="empty"> 1041 <li>The max-age request directive indicates that the client is willing to accept a response whose age is no greater than the specified 1025 1042 time in seconds. Unless max-stale directive is also included, the client is not willing to accept a stale response. 1026 </ dd>1027 </ dl>1043 </li> 1044 </ul> 1028 1045 <p id="rfc.section.3.2.1.p.5"> <span id="rfc.iref.c.7"></span> <span id="rfc.iref.m.2"></span> max-stale 1029 1046 </p> 1030 < dl class="empty">1031 < dd>The max-stale request directive indicates that the client is willing to accept a response that has exceeded its expiration1047 <ul class="empty"> 1048 <li>The max-stale request directive indicates that the client is willing to accept a response that has exceeded its expiration 1032 1049 time. If max-stale is assigned a value, then the client is willing to accept a response that has exceeded its expiration time 1033 1050 by no more than the specified number of seconds. If no value is assigned to max-stale, then the client is willing to accept 1034 a stale response of any age. <span class="comment" >[rfc.comment.15: of any staleness? --mnot]</span></dd>1035 </ dl>1051 a stale response of any age. <span class="comment" id="rfc.comment.15">[<a href="#rfc.comment.15" class="smpl">rfc.comment.15</a>: of any staleness? --mnot]</span></li> 1052 </ul> 1036 1053 <p id="rfc.section.3.2.1.p.6"> <span id="rfc.iref.c.8"></span> <span id="rfc.iref.m.3"></span> min-fresh 1037 1054 </p> 1038 < dl class="empty">1039 < dd>The min-fresh request directive indicates that the client is willing to accept a response whose freshness lifetime is no less1055 <ul class="empty"> 1056 <li>The min-fresh request directive indicates that the client is willing to accept a response whose freshness lifetime is no less 1040 1057 than its current age plus the specified time in seconds. That is, the client wants a response that will still be fresh for 1041 1058 at least the specified number of seconds. 1042 </ dd>1043 </ dl>1059 </li> 1060 </ul> 1044 1061 <p id="rfc.section.3.2.1.p.7"> <span id="rfc.iref.c.9"></span> <span id="rfc.iref.n.3"></span> no-transform 1045 1062 </p> 1046 < dl class="empty">1047 < dd>The no-transform request directive indicates that an intermediate cache or proxy <em class="bcp14">MUST NOT</em> change the Content-Encoding, Content-Range or Content-Type request headers, nor the request entity-body.1048 </ dd>1049 </ dl>1063 <ul class="empty"> 1064 <li>The no-transform request directive indicates that an intermediate cache or proxy <em class="bcp14">MUST NOT</em> change the Content-Encoding, Content-Range or Content-Type request headers, nor the request entity-body. 1065 </li> 1066 </ul> 1050 1067 <p id="rfc.section.3.2.1.p.8"> <span id="rfc.iref.c.10"></span> <span id="rfc.iref.o.1"></span> only-if-cached 1051 1068 </p> 1052 < dl class="empty">1053 < dd>The only-if-cached request directive indicates that the client only wishes to return a stored response. If it receives this1069 <ul class="empty"> 1070 <li>The only-if-cached request directive indicates that the client only wishes to return a stored response. If it receives this 1054 1071 directive, a cache <em class="bcp14">SHOULD</em> either respond using a stored response that is consistent with the other constraints of the request, or respond with a 504 1055 1072 (Gateway Timeout) status. If a group of caches is being operated as a unified system with good internal connectivity, such 1056 1073 a request <em class="bcp14">MAY</em> be forwarded within that group of caches. 1057 </ dd>1058 </ dl>1074 </li> 1075 </ul> 1059 1076 <h3 id="rfc.section.3.2.2"><a href="#rfc.section.3.2.2">3.2.2</a> <a id="cache-response-directive" href="#cache-response-directive">Response Cache-Control Directives</a></h3> 1060 1077 <div id="rfc.figure.u.11"></div><pre class="inline"><span id="rfc.iref.g.8"></span> <a href="#header.cache-control" class="smpl">cache-response-directive</a> = … … 1071 1088 </pre><p id="rfc.section.3.2.2.p.2"> <span id="rfc.iref.c.11"></span> <span id="rfc.iref.p.1"></span> public 1072 1089 </p> 1073 < dl class="empty">1074 < dd>The public response directive indicates that the response <em class="bcp14">MAY</em> be cached, even if it would normally be non-cacheable or cacheable only within a non-shared cache. (See also Authorization, <a href="p7-auth.html#header.authorization" title="Authorization">Section 3.1</a> of <a href="#Part7" id="rfc.xref.Part7.2"><cite title="HTTP/1.1, part 7: Authentication">[Part7]</cite></a>, for additional details.)1075 </ dd>1076 </ dl>1090 <ul class="empty"> 1091 <li>The public response directive indicates that the response <em class="bcp14">MAY</em> be cached, even if it would normally be non-cacheable or cacheable only within a non-shared cache. (See also Authorization, <a href="p7-auth.html#header.authorization" title="Authorization">Section 3.1</a> of <a href="#Part7" id="rfc.xref.Part7.2"><cite title="HTTP/1.1, part 7: Authentication">[Part7]</cite></a>, for additional details.) 1092 </li> 1093 </ul> 1077 1094 <p id="rfc.section.3.2.2.p.3"> <span id="rfc.iref.c.12"></span> <span id="rfc.iref.p.2"></span> private 1078 1095 </p> 1079 < dl class="empty">1080 < dd>The private response directive indicates that the response message is intended for a single user and <em class="bcp14">MUST NOT</em> be stored by a shared cache. A private (non-shared) cache <em class="bcp14">MAY</em> store the response.1081 </ dd>1082 < dd>If the private response directive specifies one or more field-names, this requirement is limited to the field-values associated1096 <ul class="empty"> 1097 <li>The private response directive indicates that the response message is intended for a single user and <em class="bcp14">MUST NOT</em> be stored by a shared cache. A private (non-shared) cache <em class="bcp14">MAY</em> store the response. 1098 </li> 1099 <li>If the private response directive specifies one or more field-names, this requirement is limited to the field-values associated 1083 1100 with the listed response headers. That is, the specified field-names(s) <em class="bcp14">MUST NOT</em> be stored by a shared cache, whereas the remainder of the response message <em class="bcp14">MAY</em> be. 1084 </ dd>1085 < dd> <b>Note:</b> This usage of the word private only controls where the response may be stored, and cannot ensure the privacy of the message1101 </li> 1102 <li> <b>Note:</b> This usage of the word private only controls where the response may be stored, and cannot ensure the privacy of the message 1086 1103 content. 1087 </ dd>1088 </ dl>1104 </li> 1105 </ul> 1089 1106 <p id="rfc.section.3.2.2.p.4"> <span id="rfc.iref.c.13"></span> <span id="rfc.iref.n.4"></span> no-cache 1090 1107 </p> 1091 < dl class="empty">1092 < dd>The no-cache response directive indicates that the response <em class="bcp14">MUST NOT</em> be used to satisfy a subsequent request without successful validation on the origin server. This allows an origin server to1108 <ul class="empty"> 1109 <li>The no-cache response directive indicates that the response <em class="bcp14">MUST NOT</em> be used to satisfy a subsequent request without successful validation on the origin server. This allows an origin server to 1093 1110 prevent caching even by caches that have been configured to return stale responses. 1094 </ dd>1095 < dd>If the no-cache response directive specifies one or more field-names, this requirement is limited to the field-values assosicated1111 </li> 1112 <li>If the no-cache response directive specifies one or more field-names, this requirement is limited to the field-values assosicated 1096 1113 with the listed response headers. That is, the specified field-name(s) <em class="bcp14">MUST NOT</em> be sent in the response to a subsequent request without successful validation on the origin server. This allows an origin 1097 1114 server to prevent the re-use of certain header fields in a response, while still allowing caching of the rest of the response. 1098 </ dd>1099 < dd> <b>Note:</b> Most HTTP/1.0 caches will not recognize or obey this directive.1100 </ dd>1101 </ dl>1115 </li> 1116 <li> <b>Note:</b> Most HTTP/1.0 caches will not recognize or obey this directive. 1117 </li> 1118 </ul> 1102 1119 <p id="rfc.section.3.2.2.p.5"> <span id="rfc.iref.c.14"></span> <span id="rfc.iref.n.5"></span> no-store 1103 1120 </p> 1104 < dl class="empty">1105 < dd>The no-store response directive indicates that a cache <em class="bcp14">MUST NOT</em> store any part of either the immediate request or response. This directive applies to both non-shared and shared caches. "<em class="bcp14">MUST NOT</em> store" in this context means that the cache <em class="bcp14">MUST NOT</em> intentionally store the information in non-volatile storage, and <em class="bcp14">MUST</em> make a best-effort attempt to remove the information from volatile storage as promptly as possible after forwarding it.1106 </ dd>1107 < dd>This directive is NOT a reliable or sufficient mechanism for ensuring privacy. In particular, malicious or compromised caches1121 <ul class="empty"> 1122 <li>The no-store response directive indicates that a cache <em class="bcp14">MUST NOT</em> store any part of either the immediate request or response. This directive applies to both non-shared and shared caches. "<em class="bcp14">MUST NOT</em> store" in this context means that the cache <em class="bcp14">MUST NOT</em> intentionally store the information in non-volatile storage, and <em class="bcp14">MUST</em> make a best-effort attempt to remove the information from volatile storage as promptly as possible after forwarding it. 1123 </li> 1124 <li>This directive is NOT a reliable or sufficient mechanism for ensuring privacy. In particular, malicious or compromised caches 1108 1125 might not recognize or obey this directive, and communications networks may be vulnerable to eavesdropping. 1109 </ dd>1110 </ dl>1126 </li> 1127 </ul> 1111 1128 <p id="rfc.section.3.2.2.p.6"> <span id="rfc.iref.c.15"></span> <span id="rfc.iref.m.4"></span> must-revalidate 1112 1129 </p> 1113 < dl class="empty">1114 < dd>The must-revalidate response directive indicates that once it has become stale, the response <em class="bcp14">MUST NOT</em> be used to satisfy subsequent requests without successful validation on the origin server.1115 </ dd>1116 < dd>The must-revalidate directive is necessary to support reliable operation for certain protocol features. In all circumstances1130 <ul class="empty"> 1131 <li>The must-revalidate response directive indicates that once it has become stale, the response <em class="bcp14">MUST NOT</em> be used to satisfy subsequent requests without successful validation on the origin server. 1132 </li> 1133 <li>The must-revalidate directive is necessary to support reliable operation for certain protocol features. In all circumstances 1117 1134 an HTTP/1.1 cache <em class="bcp14">MUST</em> obey the must-revalidate directive; in particular, if the cache cannot reach the origin server for any reason, it <em class="bcp14">MUST</em> generate a 504 (Gateway Timeout) response. 1118 </ dd>1119 < dd>Servers <em class="bcp14">SHOULD</em> send the must-revalidate directive if and only if failure to validate a request on the entity could result in incorrect operation,1135 </li> 1136 <li>Servers <em class="bcp14">SHOULD</em> send the must-revalidate directive if and only if failure to validate a request on the entity could result in incorrect operation, 1120 1137 such as a silently unexecuted financial transaction. 1121 </ dd>1122 </ dl>1138 </li> 1139 </ul> 1123 1140 <p id="rfc.section.3.2.2.p.7"> <span id="rfc.iref.c.16"></span> <span id="rfc.iref.p.3"></span> proxy-revalidate 1124 1141 </p> 1125 < dl class="empty">1126 < dd>The proxy-revalidate response directive has the same meaning as the must-revalidate response directive, except that it does1142 <ul class="empty"> 1143 <li>The proxy-revalidate response directive has the same meaning as the must-revalidate response directive, except that it does 1127 1144 not apply to non-shared caches. 1128 </ dd>1129 </ dl>1145 </li> 1146 </ul> 1130 1147 <p id="rfc.section.3.2.2.p.8"> <span id="rfc.iref.c.17"></span> <span id="rfc.iref.m.5"></span> max-age 1131 1148 </p> 1132 < dl class="empty">1133 < dd>The max-age response directive indicates that response is to be considered stale after its age is greater than the specified1149 <ul class="empty"> 1150 <li>The max-age response directive indicates that response is to be considered stale after its age is greater than the specified 1134 1151 number of seconds. 1135 </ dd>1136 </ dl>1152 </li> 1153 </ul> 1137 1154 <p id="rfc.section.3.2.2.p.9"> <span id="rfc.iref.c.18"></span> <span id="rfc.iref.s.2"></span> s-maxage 1138 1155 </p> 1139 < dl class="empty">1140 < dd>The s-maxage response directive indicates that, in shared caches, the maximum age specified by this directive overrides the1156 <ul class="empty"> 1157 <li>The s-maxage response directive indicates that, in shared caches, the maximum age specified by this directive overrides the 1141 1158 maximum age specified by either the max-age directive or the Expires header. The s-maxage directive also implies the semantics 1142 1159 of the proxy-revalidate response directive. 1143 </ dd>1144 </ dl>1160 </li> 1161 </ul> 1145 1162 <p id="rfc.section.3.2.2.p.10"> <span id="rfc.iref.c.19"></span> <span id="rfc.iref.n.6"></span> no-transform 1146 1163 </p> 1147 < dl class="empty">1148 < dd>The no-transform response directive indicates that an intermediate cache or proxy <em class="bcp14">MUST NOT</em> change the Content-Encoding, Content-Range or Content-Type response headers, nor the response entity-body.1149 </ dd>1150 </ dl>1164 <ul class="empty"> 1165 <li>The no-transform response directive indicates that an intermediate cache or proxy <em class="bcp14">MUST NOT</em> change the Content-Encoding, Content-Range or Content-Type response headers, nor the response entity-body. 1166 </li> 1167 </ul> 1151 1168 <h3 id="rfc.section.3.2.3"><a href="#rfc.section.3.2.3">3.2.3</a> <a id="cache.control.extensions" href="#cache.control.extensions">Cache Control Extensions</a></h3> 1152 1169 <p id="rfc.section.3.2.3.p.1">The Cache-Control header field can be extended through the use of one or more cache-extension tokens, each with an optional … … 1188 1205 </pre><div id="rfc.figure.u.14"></div> 1189 1206 <p>For example</p> <pre class="text"> Expires: Thu, 01 Dec 1994 16:00:00 GMT 1190 </pre><div class="note" >1207 </pre><div class="note" id="rfc.section.3.3.p.6"> 1191 1208 <p> <b>Note:</b> if a response includes a Cache-Control field with the max-age directive (see <a href="#cache-response-directive" title="Response Cache-Control Directives">Section 3.2.2</a>), that directive overrides the Expires field. Likewise, the s-maxage directive overrides Expires in shared caches. 1192 1209 </p> … … 1210 1227 has the same semantics as the no-cache response directive (see <a href="#cache-response-directive" title="Response Cache-Control Directives">Section 3.2.2</a>) and is defined here for backward compatibility with HTTP/1.0. Clients <em class="bcp14">SHOULD</em> include both header fields when a no-cache request is sent to a server not known to be HTTP/1.1 compliant. HTTP/1.1 caches <em class="bcp14">SHOULD</em> treat "Pragma: no-cache" as if the client had sent "Cache-Control: no-cache". 1211 1228 </p> 1212 <div class="note" >1229 <div class="note" id="rfc.section.3.4.p.4"> 1213 1230 <p> <b>Note:</b> because the meaning of "Pragma: no-cache" as a response-header field is not actually specified, it does not provide a reliable 1214 1231 replacement for "Cache-Control: no-cache" in a response. … … 1307 1324 </p> 1308 1325 <p id="rfc.section.3.6.p.14"> 110 Response is stale </p> 1309 < dl class="empty">1310 < dd><em class="bcp14">SHOULD</em> be included whenever the returned response is stale.1311 </ dd>1312 </ dl>1326 <ul class="empty"> 1327 <li><em class="bcp14">SHOULD</em> be included whenever the returned response is stale. 1328 </li> 1329 </ul> 1313 1330 <p id="rfc.section.3.6.p.15"> 111 Revalidation failed </p> 1314 < dl class="empty">1315 < dd><em class="bcp14">SHOULD</em> be included if a cache returns a stale response because an attempt to validate the response failed, due to an inability to1331 <ul class="empty"> 1332 <li><em class="bcp14">SHOULD</em> be included if a cache returns a stale response because an attempt to validate the response failed, due to an inability to 1316 1333 reach the server. 1317 </ dd>1318 </ dl>1334 </li> 1335 </ul> 1319 1336 <p id="rfc.section.3.6.p.16"> 112 Disconnected operation </p> 1320 < dl class="empty">1321 < dd><em class="bcp14">SHOULD</em> be included if the cache is intentionally disconnected from the rest of the network for a period of time.1322 </ dd>1323 </ dl>1337 <ul class="empty"> 1338 <li><em class="bcp14">SHOULD</em> be included if the cache is intentionally disconnected from the rest of the network for a period of time. 1339 </li> 1340 </ul> 1324 1341 <p id="rfc.section.3.6.p.17"> 113 Heuristic expiration </p> 1325 < dl class="empty">1326 < dd><em class="bcp14">SHOULD</em> be included if the cache heuristically chose a freshness lifetime greater than 24 hours and the response's age is greater1342 <ul class="empty"> 1343 <li><em class="bcp14">SHOULD</em> be included if the cache heuristically chose a freshness lifetime greater than 24 hours and the response's age is greater 1327 1344 than 24 hours. 1328 </ dd>1329 </ dl>1345 </li> 1346 </ul> 1330 1347 <p id="rfc.section.3.6.p.18"> 199 Miscellaneous warning </p> 1331 < dl class="empty">1332 < dd>The warning text can include arbitrary information to be presented to a human user, or logged. A system receiving this warning <em class="bcp14">MUST NOT</em> take any automated action, besides presenting the warning to the user.1333 </ dd>1334 </ dl>1348 <ul class="empty"> 1349 <li>The warning text can include arbitrary information to be presented to a human user, or logged. A system receiving this warning <em class="bcp14">MUST NOT</em> take any automated action, besides presenting the warning to the user. 1350 </li> 1351 </ul> 1335 1352 <p id="rfc.section.3.6.p.19"> 214 Transformation applied </p> 1336 < dl class="empty">1337 < dd><em class="bcp14">MUST</em> be added by an intermediate cache or proxy if it applies any transformation changing the content-coding (as specified in the1353 <ul class="empty"> 1354 <li><em class="bcp14">MUST</em> be added by an intermediate cache or proxy if it applies any transformation changing the content-coding (as specified in the 1338 1355 Content-Encoding header) or media-type (as specified in the Content-Type header) of the response, or the entity-body of the 1339 1356 response, unless this Warning code already appears in the response. 1340 </ dd>1341 </ dl>1357 </li> 1358 </ul> 1342 1359 <p id="rfc.section.3.6.p.20"> 299 Miscellaneous persistent warning </p> 1343 < dl class="empty">1344 < dd>The warning text can include arbitrary information to be presented to a human user, or logged. A system receiving this warning <em class="bcp14">MUST NOT</em> take any automated action.1345 </ dd>1346 </ dl>1360 <ul class="empty"> 1361 <li>The warning text can include arbitrary information to be presented to a human user, or logged. A system receiving this warning <em class="bcp14">MUST NOT</em> take any automated action. 1362 </li> 1363 </ul> 1347 1364 <h1 id="rfc.section.4"><a href="#rfc.section.4">4.</a> <a id="history.lists" href="#history.lists">History Lists</a></h1> 1348 1365 <p id="rfc.section.4.p.1">User agents often have history mechanisms, such as "Back" buttons and history lists, that can be used to redisplay an entity … … 1356 1373 </p> 1357 1374 <p id="rfc.section.4.p.4">This is not to be construed to prohibit the history mechanism from telling the user that a view might be stale. </p> 1358 < dl class="empty">1359 < dd> <b>Note:</b> if history list mechanisms unnecessarily prevent users from viewing stale resources, this will tend to force service authors1375 <ul class="empty"> 1376 <li> <b>Note:</b> if history list mechanisms unnecessarily prevent users from viewing stale resources, this will tend to force service authors 1360 1377 to avoid using HTTP expiration controls and cache controls when they would otherwise like to. Service authors may consider 1361 1378 it important that users not be presented with error messages or warning messages when they use navigation controls (such as … … 1363 1380 user interface considerations may force service authors to resort to other means of preventing caching (e.g. "once-only" URLs) 1364 1381 in order not to suffer the effects of improperly functioning history mechanisms. 1365 </ dd>1366 </ dl>1382 </li> 1383 </ul> 1367 1384 <h1 id="rfc.section.5"><a href="#rfc.section.5">5.</a> <a id="IANA.considerations" href="#IANA.considerations">IANA Considerations</a></h1> 1368 1385 <h2 id="rfc.section.5.1"><a href="#rfc.section.5.1">5.1</a> <a id="message.header.registration" href="#message.header.registration">Message Header Registration</a></h2> … … 1371 1388 <div id="rfc.table.1"> 1372 1389 <div id="iana.header.registration.table"></div> 1373 <table summary="" class="tt full" cellpadding="3" cellspacing="0">1390 <table class="tt full left" cellpadding="3" cellspacing="0"> 1374 1391 <thead> 1375 1392 <tr> … … 1382 1399 <tbody> 1383 1400 <tr> 1384 <td >Age</td>1385 <td >http</td>1386 <td >standard</td>1387 <td > <a href="#header.age" id="rfc.xref.header.age.2" title="Age">Section 3.1</a>1401 <td class="left">Age</td> 1402 <td class="left">http</td> 1403 <td class="left">standard</td> 1404 <td class="left"> <a href="#header.age" id="rfc.xref.header.age.2" title="Age">Section 3.1</a> 1388 1405 </td> 1389 1406 </tr> 1390 1407 <tr> 1391 <td >Cache-Control</td>1392 <td >http</td>1393 <td >standard</td>1394 <td > <a href="#header.cache-control" id="rfc.xref.header.cache-control.5" title="Cache-Control">Section 3.2</a>1408 <td class="left">Cache-Control</td> 1409 <td class="left">http</td> 1410 <td class="left">standard</td> 1411 <td class="left"> <a href="#header.cache-control" id="rfc.xref.header.cache-control.5" title="Cache-Control">Section 3.2</a> 1395 1412 </td> 1396 1413 </tr> 1397 1414 <tr> 1398 <td >Expires</td>1399 <td >http</td>1400 <td >standard</td>1401 <td > <a href="#header.expires" id="rfc.xref.header.expires.3" title="Expires">Section 3.3</a>1415 <td class="left">Expires</td> 1416 <td class="left">http</td> 1417 <td class="left">standard</td> 1418 <td class="left"> <a href="#header.expires" id="rfc.xref.header.expires.3" title="Expires">Section 3.3</a> 1402 1419 </td> 1403 1420 </tr> 1404 1421 <tr> 1405 <td >Pragma</td>1406 <td >http</td>1407 <td >standard</td>1408 <td > <a href="#header.pragma" id="rfc.xref.header.pragma.3" title="Pragma">Section 3.4</a>1422 <td class="left">Pragma</td> 1423 <td class="left">http</td> 1424 <td class="left">standard</td> 1425 <td class="left"> <a href="#header.pragma" id="rfc.xref.header.pragma.3" title="Pragma">Section 3.4</a> 1409 1426 </td> 1410 1427 </tr> 1411 1428 <tr> 1412 <td >Vary</td>1413 <td >http</td>1414 <td >standard</td>1415 <td > <a href="#header.vary" id="rfc.xref.header.vary.2" title="Vary">Section 3.5</a>1429 <td class="left">Vary</td> 1430 <td class="left">http</td> 1431 <td class="left">standard</td> 1432 <td class="left"> <a href="#header.vary" id="rfc.xref.header.vary.2" title="Vary">Section 3.5</a> 1416 1433 </td> 1417 1434 </tr> 1418 1435 <tr> 1419 <td >Warning</td>1420 <td >http</td>1421 <td >standard</td>1422 <td > <a href="#header.warning" id="rfc.xref.header.warning.4" title="Warning">Section 3.6</a>1436 <td class="left">Warning</td> 1437 <td class="left">http</td> 1438 <td class="left">standard</td> 1439 <td class="left"> <a href="#header.warning" id="rfc.xref.header.warning.4" title="Warning">Section 3.6</a> 1423 1440 </td> 1424 1441 </tr> … … 1441 1458 <h2 id="rfc.references.1"><a href="#rfc.section.8.1" id="rfc.section.8.1">8.1</a> Normative References 1442 1459 </h2> 1443 <table summary="Normative References">1460 <table> 1444 1461 <tr> 1445 1462 <td class="reference"><b id="ISO-8859-1">[ISO-8859-1]</b></td> … … 1448 1465 <tr> 1449 1466 <td class="reference"><b id="Part1">[Part1]</b></td> 1450 <td class="top"><a title="Day Software">Fielding, R., Ed.</a>, <a title="One Laptop per Child">Gettys, J.</a>, <a title="Hewlett-Packard Company">Mogul, J.</a>, <a title="Microsoft Corporation">Frystyk, H.</a>, <a title="Adobe Systems, Incorporated">Masinter, L.</a>, <a title="Microsoft Corporation">Leach, P.</a>, <a title="World Wide Web Consortium">Berners-Lee, T.</a>, <a title="World Wide Web Consortium">Lafon, Y., Ed.</a>, and <a title="greenbytes GmbH">J. F. Reschke, Ed.</a>, “<a href="http://tools.ietf.org/html/draft-ietf-httpbis-p1-messaging-06">HTTP/1.1, part 1: URIs, Connections, and Message Parsing</a>”, Internet-Draft draft-ietf-httpbis-p1-messaging-06 (work in progress), March 2009.1467 <td class="top"><a href="mailto:fielding@gbiv.com" title="Day Software">Fielding, R., Ed.</a>, <a href="mailto:jg@laptop.org" title="One Laptop per Child">Gettys, J.</a>, <a href="mailto:JeffMogul@acm.org" title="Hewlett-Packard Company">Mogul, J.</a>, <a href="mailto:henrikn@microsoft.com" title="Microsoft Corporation">Frystyk, H.</a>, <a href="mailto:LMM@acm.org" title="Adobe Systems, Incorporated">Masinter, L.</a>, <a href="mailto:paulle@microsoft.com" title="Microsoft Corporation">Leach, P.</a>, <a href="mailto:timbl@w3.org" title="World Wide Web Consortium">Berners-Lee, T.</a>, <a href="mailto:ylafon@w3.org" title="World Wide Web Consortium">Lafon, Y., Ed.</a>, and <a href="mailto:julian.reschke@greenbytes.de" title="greenbytes GmbH">J. Reschke, Ed.</a>, “<a href="http://tools.ietf.org/html/draft-ietf-httpbis-p1-messaging-06">HTTP/1.1, part 1: URIs, Connections, and Message Parsing</a>”, Internet-Draft draft-ietf-httpbis-p1-messaging-06 (work in progress), March 2009. 1451 1468 </td> 1452 1469 </tr> 1453 1470 <tr> 1454 1471 <td class="reference"><b id="Part2">[Part2]</b></td> 1455 <td class="top"><a title="Day Software">Fielding, R., Ed.</a>, <a title="One Laptop per Child">Gettys, J.</a>, <a title="Hewlett-Packard Company">Mogul, J.</a>, <a title="Microsoft Corporation">Frystyk, H.</a>, <a title="Adobe Systems, Incorporated">Masinter, L.</a>, <a title="Microsoft Corporation">Leach, P.</a>, <a title="World Wide Web Consortium">Berners-Lee, T.</a>, <a title="World Wide Web Consortium">Lafon, Y., Ed.</a>, and <a title="greenbytes GmbH">J. F. Reschke, Ed.</a>, “<a href="http://tools.ietf.org/html/draft-ietf-httpbis-p2-semantics-06">HTTP/1.1, part 2: Message Semantics</a>”, Internet-Draft draft-ietf-httpbis-p2-semantics-06 (work in progress), March 2009.1472 <td class="top"><a href="mailto:fielding@gbiv.com" title="Day Software">Fielding, R., Ed.</a>, <a href="mailto:jg@laptop.org" title="One Laptop per Child">Gettys, J.</a>, <a href="mailto:JeffMogul@acm.org" title="Hewlett-Packard Company">Mogul, J.</a>, <a href="mailto:henrikn@microsoft.com" title="Microsoft Corporation">Frystyk, H.</a>, <a href="mailto:LMM@acm.org" title="Adobe Systems, Incorporated">Masinter, L.</a>, <a href="mailto:paulle@microsoft.com" title="Microsoft Corporation">Leach, P.</a>, <a href="mailto:timbl@w3.org" title="World Wide Web Consortium">Berners-Lee, T.</a>, <a href="mailto:ylafon@w3.org" title="World Wide Web Consortium">Lafon, Y., Ed.</a>, and <a href="mailto:julian.reschke@greenbytes.de" title="greenbytes GmbH">J. Reschke, Ed.</a>, “<a href="http://tools.ietf.org/html/draft-ietf-httpbis-p2-semantics-06">HTTP/1.1, part 2: Message Semantics</a>”, Internet-Draft draft-ietf-httpbis-p2-semantics-06 (work in progress), March 2009. 1456 1473 </td> 1457 1474 </tr> 1458 1475 <tr> 1459 1476 <td class="reference"><b id="Part3">[Part3]</b></td> 1460 <td class="top"><a title="Day Software">Fielding, R., Ed.</a>, <a title="One Laptop per Child">Gettys, J.</a>, <a title="Hewlett-Packard Company">Mogul, J.</a>, <a title="Microsoft Corporation">Frystyk, H.</a>, <a title="Adobe Systems, Incorporated">Masinter, L.</a>, <a title="Microsoft Corporation">Leach, P.</a>, <a title="World Wide Web Consortium">Berners-Lee, T.</a>, <a title="World Wide Web Consortium">Lafon, Y., Ed.</a>, and <a title="greenbytes GmbH">J. F. Reschke, Ed.</a>, “<a href="http://tools.ietf.org/html/draft-ietf-httpbis-p3-payload-06">HTTP/1.1, part 3: Message Payload and Content Negotiation</a>”, Internet-Draft draft-ietf-httpbis-p3-payload-06 (work in progress), March 2009.1477 <td class="top"><a href="mailto:fielding@gbiv.com" title="Day Software">Fielding, R., Ed.</a>, <a href="mailto:jg@laptop.org" title="One Laptop per Child">Gettys, J.</a>, <a href="mailto:JeffMogul@acm.org" title="Hewlett-Packard Company">Mogul, J.</a>, <a href="mailto:henrikn@microsoft.com" title="Microsoft Corporation">Frystyk, H.</a>, <a href="mailto:LMM@acm.org" title="Adobe Systems, Incorporated">Masinter, L.</a>, <a href="mailto:paulle@microsoft.com" title="Microsoft Corporation">Leach, P.</a>, <a href="mailto:timbl@w3.org" title="World Wide Web Consortium">Berners-Lee, T.</a>, <a href="mailto:ylafon@w3.org" title="World Wide Web Consortium">Lafon, Y., Ed.</a>, and <a href="mailto:julian.reschke@greenbytes.de" title="greenbytes GmbH">J. Reschke, Ed.</a>, “<a href="http://tools.ietf.org/html/draft-ietf-httpbis-p3-payload-06">HTTP/1.1, part 3: Message Payload and Content Negotiation</a>”, Internet-Draft draft-ietf-httpbis-p3-payload-06 (work in progress), March 2009. 1461 1478 </td> 1462 1479 </tr> 1463 1480 <tr> 1464 1481 <td class="reference"><b id="Part4">[Part4]</b></td> 1465 <td class="top"><a title="Day Software">Fielding, R., Ed.</a>, <a title="One Laptop per Child">Gettys, J.</a>, <a title="Hewlett-Packard Company">Mogul, J.</a>, <a title="Microsoft Corporation">Frystyk, H.</a>, <a title="Adobe Systems, Incorporated">Masinter, L.</a>, <a title="Microsoft Corporation">Leach, P.</a>, <a title="World Wide Web Consortium">Berners-Lee, T.</a>, <a title="World Wide Web Consortium">Lafon, Y., Ed.</a>, and <a title="greenbytes GmbH">J. F. Reschke, Ed.</a>, “<a href="http://tools.ietf.org/html/draft-ietf-httpbis-p4-conditional-06">HTTP/1.1, part 4: Conditional Requests</a>”, Internet-Draft draft-ietf-httpbis-p4-conditional-06 (work in progress), March 2009.1482 <td class="top"><a href="mailto:fielding@gbiv.com" title="Day Software">Fielding, R., Ed.</a>, <a href="mailto:jg@laptop.org" title="One Laptop per Child">Gettys, J.</a>, <a href="mailto:JeffMogul@acm.org" title="Hewlett-Packard Company">Mogul, J.</a>, <a href="mailto:henrikn@microsoft.com" title="Microsoft Corporation">Frystyk, H.</a>, <a href="mailto:LMM@acm.org" title="Adobe Systems, Incorporated">Masinter, L.</a>, <a href="mailto:paulle@microsoft.com" title="Microsoft Corporation">Leach, P.</a>, <a href="mailto:timbl@w3.org" title="World Wide Web Consortium">Berners-Lee, T.</a>, <a href="mailto:ylafon@w3.org" title="World Wide Web Consortium">Lafon, Y., Ed.</a>, and <a href="mailto:julian.reschke@greenbytes.de" title="greenbytes GmbH">J. Reschke, Ed.</a>, “<a href="http://tools.ietf.org/html/draft-ietf-httpbis-p4-conditional-06">HTTP/1.1, part 4: Conditional Requests</a>”, Internet-Draft draft-ietf-httpbis-p4-conditional-06 (work in progress), March 2009. 1466 1483 </td> 1467 1484 </tr> 1468 1485 <tr> 1469 1486 <td class="reference"><b id="Part5">[Part5]</b></td> 1470 <td class="top"><a title="Day Software">Fielding, R., Ed.</a>, <a title="One Laptop per Child">Gettys, J.</a>, <a title="Hewlett-Packard Company">Mogul, J.</a>, <a title="Microsoft Corporation">Frystyk, H.</a>, <a title="Adobe Systems, Incorporated">Masinter, L.</a>, <a title="Microsoft Corporation">Leach, P.</a>, <a title="World Wide Web Consortium">Berners-Lee, T.</a>, <a title="World Wide Web Consortium">Lafon, Y., Ed.</a>, and <a title="greenbytes GmbH">J. F. Reschke, Ed.</a>, “<a href="http://tools.ietf.org/html/draft-ietf-httpbis-p5-range-06">HTTP/1.1, part 5: Range Requests and Partial Responses</a>”, Internet-Draft draft-ietf-httpbis-p5-range-06 (work in progress), March 2009.1487 <td class="top"><a href="mailto:fielding@gbiv.com" title="Day Software">Fielding, R., Ed.</a>, <a href="mailto:jg@laptop.org" title="One Laptop per Child">Gettys, J.</a>, <a href="mailto:JeffMogul@acm.org" title="Hewlett-Packard Company">Mogul, J.</a>, <a href="mailto:henrikn@microsoft.com" title="Microsoft Corporation">Frystyk, H.</a>, <a href="mailto:LMM@acm.org" title="Adobe Systems, Incorporated">Masinter, L.</a>, <a href="mailto:paulle@microsoft.com" title="Microsoft Corporation">Leach, P.</a>, <a href="mailto:timbl@w3.org" title="World Wide Web Consortium">Berners-Lee, T.</a>, <a href="mailto:ylafon@w3.org" title="World Wide Web Consortium">Lafon, Y., Ed.</a>, and <a href="mailto:julian.reschke@greenbytes.de" title="greenbytes GmbH">J. Reschke, Ed.</a>, “<a href="http://tools.ietf.org/html/draft-ietf-httpbis-p5-range-06">HTTP/1.1, part 5: Range Requests and Partial Responses</a>”, Internet-Draft draft-ietf-httpbis-p5-range-06 (work in progress), March 2009. 1471 1488 </td> 1472 1489 </tr> 1473 1490 <tr> 1474 1491 <td class="reference"><b id="Part7">[Part7]</b></td> 1475 <td class="top"><a title="Day Software">Fielding, R., Ed.</a>, <a title="One Laptop per Child">Gettys, J.</a>, <a title="Hewlett-Packard Company">Mogul, J.</a>, <a title="Microsoft Corporation">Frystyk, H.</a>, <a title="Adobe Systems, Incorporated">Masinter, L.</a>, <a title="Microsoft Corporation">Leach, P.</a>, <a title="World Wide Web Consortium">Berners-Lee, T.</a>, <a title="World Wide Web Consortium">Lafon, Y., Ed.</a>, and <a title="greenbytes GmbH">J. F. Reschke, Ed.</a>, “<a href="http://tools.ietf.org/html/draft-ietf-httpbis-p7-auth-06">HTTP/1.1, part 7: Authentication</a>”, Internet-Draft draft-ietf-httpbis-p7-auth-06 (work in progress), March 2009.1492 <td class="top"><a href="mailto:fielding@gbiv.com" title="Day Software">Fielding, R., Ed.</a>, <a href="mailto:jg@laptop.org" title="One Laptop per Child">Gettys, J.</a>, <a href="mailto:JeffMogul@acm.org" title="Hewlett-Packard Company">Mogul, J.</a>, <a href="mailto:henrikn@microsoft.com" title="Microsoft Corporation">Frystyk, H.</a>, <a href="mailto:LMM@acm.org" title="Adobe Systems, Incorporated">Masinter, L.</a>, <a href="mailto:paulle@microsoft.com" title="Microsoft Corporation">Leach, P.</a>, <a href="mailto:timbl@w3.org" title="World Wide Web Consortium">Berners-Lee, T.</a>, <a href="mailto:ylafon@w3.org" title="World Wide Web Consortium">Lafon, Y., Ed.</a>, and <a href="mailto:julian.reschke@greenbytes.de" title="greenbytes GmbH">J. Reschke, Ed.</a>, “<a href="http://tools.ietf.org/html/draft-ietf-httpbis-p7-auth-06">HTTP/1.1, part 7: Authentication</a>”, Internet-Draft draft-ietf-httpbis-p7-auth-06 (work in progress), March 2009. 1476 1493 </td> 1477 1494 </tr> 1478 1495 <tr> 1479 1496 <td class="reference"><b id="RFC2047">[RFC2047]</b></td> 1480 <td class="top"><a title="University of Tennessee">Moore, K.</a>, “<a href="http://tools.ietf.org/html/rfc2047">MIME (Multipurpose Internet Mail Extensions) Part Three: Message Header Extensions for Non-ASCII Text</a>”, RFC 2047, November 1996.1497 <td class="top"><a href="mailto:moore@cs.utk.edu" title="University of Tennessee">Moore, K.</a>, “<a href="http://tools.ietf.org/html/rfc2047">MIME (Multipurpose Internet Mail Extensions) Part Three: Message Header Extensions for Non-ASCII Text</a>”, RFC 2047, November 1996. 1481 1498 </td> 1482 1499 </tr> 1483 1500 <tr> 1484 1501 <td class="reference"><b id="RFC2119">[RFC2119]</b></td> 1485 <td class="top"><a title="Harvard University">Bradner, S.</a>, “<a href="http://tools.ietf.org/html/rfc2119">Key words for use in RFCs to Indicate Requirement Levels</a>”, BCP 14, RFC 2119, March 1997.1502 <td class="top"><a href="mailto:sob@harvard.edu" title="Harvard University">Bradner, S.</a>, “<a href="http://tools.ietf.org/html/rfc2119">Key words for use in RFCs to Indicate Requirement Levels</a>”, BCP 14, RFC 2119, March 1997. 1486 1503 </td> 1487 1504 </tr> 1488 1505 <tr> 1489 1506 <td class="reference"><b id="RFC5234">[RFC5234]</b></td> 1490 <td class="top"><a title="Brandenburg InternetWorking">Crocker, D., Ed.</a> and <atitle="THUS plc.">P. Overell</a>, “<a href="http://tools.ietf.org/html/rfc5234">Augmented BNF for Syntax Specifications: ABNF</a>”, STD 68, RFC 5234, January 2008.1507 <td class="top"><a href="mailto:dcrocker@bbiw.net" title="Brandenburg InternetWorking">Crocker, D., Ed.</a> and <a href="mailto:paul.overell@thus.net" title="THUS plc.">P. Overell</a>, “<a href="http://tools.ietf.org/html/rfc5234">Augmented BNF for Syntax Specifications: ABNF</a>”, STD 68, RFC 5234, January 2008. 1491 1508 </td> 1492 1509 </tr> … … 1494 1511 <h2 id="rfc.references.2"><a href="#rfc.section.8.2" id="rfc.section.8.2">8.2</a> Informative References 1495 1512 </h2> 1496 <table summary="Informative References">1513 <table> 1497 1514 <tr> 1498 1515 <td class="reference"><b id="RFC1305">[RFC1305]</b></td> 1499 <td class="top"><a title="University of Delaware, Electrical Engineering Department">Mills, D.</a>, “<a href="http://tools.ietf.org/html/rfc1305">Network Time Protocol (Version 3) Specification, Implementation</a>”, RFC 1305, March 1992.1516 <td class="top"><a href="mailto:mills@udel.edu" title="University of Delaware, Electrical Engineering Department">Mills, D.</a>, “<a href="http://tools.ietf.org/html/rfc1305">Network Time Protocol (Version 3) Specification, Implementation</a>”, RFC 1305, March 1992. 1500 1517 </td> 1501 1518 </tr> 1502 1519 <tr> 1503 1520 <td class="reference"><b id="RFC2616">[RFC2616]</b></td> 1504 <td class="top"><a title="University of California, Irvine">Fielding, R.</a>, <a title="W3C">Gettys, J.</a>, <a title="Compaq Computer Corporation">Mogul, J.</a>, <a title="MIT Laboratory for Computer Science">Frystyk, H.</a>, <a title="Xerox Corporation">Masinter, L.</a>, <a title="Microsoft Corporation">Leach, P.</a>, and <atitle="W3C">T. Berners-Lee</a>, “<a href="http://tools.ietf.org/html/rfc2616">Hypertext Transfer Protocol -- HTTP/1.1</a>”, RFC 2616, June 1999.1521 <td class="top"><a href="mailto:fielding@ics.uci.edu" title="University of California, Irvine">Fielding, R.</a>, <a href="mailto:jg@w3.org" title="W3C">Gettys, J.</a>, <a href="mailto:mogul@wrl.dec.com" title="Compaq Computer Corporation">Mogul, J.</a>, <a href="mailto:frystyk@w3.org" title="MIT Laboratory for Computer Science">Frystyk, H.</a>, <a href="mailto:masinter@parc.xerox.com" title="Xerox Corporation">Masinter, L.</a>, <a href="mailto:paulle@microsoft.com" title="Microsoft Corporation">Leach, P.</a>, and <a href="mailto:timbl@w3.org" title="W3C">T. Berners-Lee</a>, “<a href="http://tools.ietf.org/html/rfc2616">Hypertext Transfer Protocol -- HTTP/1.1</a>”, RFC 2616, June 1999. 1505 1522 </td> 1506 1523 </tr> 1507 1524 <tr> 1508 1525 <td class="reference"><b id="RFC3864">[RFC3864]</b></td> 1509 <td class="top"><a title="Nine by Nine">Klyne, G.</a>, <a title="BEA Systems">Nottingham, M.</a>, and <atitle="HP Labs">J. Mogul</a>, “<a href="http://tools.ietf.org/html/rfc3864">Registration Procedures for Message Header Fields</a>”, BCP 90, RFC 3864, September 2004.1526 <td class="top"><a href="mailto:GK-IETF@ninebynine.org" title="Nine by Nine">Klyne, G.</a>, <a href="mailto:mnot@pobox.com" title="BEA Systems">Nottingham, M.</a>, and <a href="mailto:JeffMogul@acm.org" title="HP Labs">J. Mogul</a>, “<a href="http://tools.ietf.org/html/rfc3864">Registration Procedures for Message Header Fields</a>”, BCP 90, RFC 3864, September 2004. 1510 1527 </td> 1511 1528 </tr> 1512 1529 </table> 1513 <h1 id="rfc.authors"><a href="#rfc.authors">Authors' Addresses</a></h1> 1514 <address class="vcard"><span class="vcardline"><span class="fn">Roy T. Fielding</span> 1515 (editor) 1516 <span class="n hidden"><span class="family-name">Fielding</span><span class="given-name">Roy T.</span></span></span><span class="org vcardline">Day Software</span><span class="adr"><span class="street-address vcardline">23 Corporate Plaza DR, Suite 280</span><span class="vcardline"><span class="locality">Newport Beach</span>, <span class="region">CA</span> <span class="postal-code">92660</span></span><span class="country-name vcardline">USA</span></span><span class="vcardline tel">Phone: <a href="tel:+1-949-706-5300"><span class="value">+1-949-706-5300</span></a></span><span class="vcardline tel"><span class="type">Fax</span>: <a href="fax:+1-949-706-5305"><span class="value">+1-949-706-5305</span></a></span><span class="vcardline">EMail: <a><span class="email">fielding@gbiv.com</span></a></span><span class="vcardline">URI: <a href="http://roy.gbiv.com/" class="url">http://roy.gbiv.com/</a></span></address> 1517 <address class="vcard"><span class="vcardline"><span class="fn">Jim Gettys</span><span class="n hidden"><span class="family-name">Gettys</span><span class="given-name">Jim</span></span></span><span class="org vcardline">One Laptop per Child</span><span class="adr"><span class="street-address vcardline">21 Oak Knoll Road</span><span class="vcardline"><span class="locality">Carlisle</span>, <span class="region">MA</span> <span class="postal-code">01741</span></span><span class="country-name vcardline">USA</span></span><span class="vcardline">EMail: <a><span class="email">jg@laptop.org</span></a></span><span class="vcardline">URI: <a href="http://www.laptop.org/" class="url">http://www.laptop.org/</a></span></address> 1518 <address class="vcard"><span class="vcardline"><span class="fn">Jeffrey C. Mogul</span><span class="n hidden"><span class="family-name">Mogul</span><span class="given-name">Jeffrey C.</span></span></span><span class="org vcardline">Hewlett-Packard Company</span><span class="adr"><span class="street-address vcardline">HP Labs, Large Scale Systems Group</span><span class="street-address vcardline">1501 Page Mill Road, MS 1177</span><span class="vcardline"><span class="locality">Palo Alto</span>, <span class="region">CA</span> <span class="postal-code">94304</span></span><span class="country-name vcardline">USA</span></span><span class="vcardline">EMail: <a><span class="email">JeffMogul@acm.org</span></a></span></address> 1519 <address class="vcard"><span class="vcardline"><span class="fn">Henrik Frystyk Nielsen</span><span class="n hidden"><span class="family-name">Frystyk</span></span></span><span class="org vcardline">Microsoft Corporation</span><span class="adr"><span class="street-address vcardline">1 Microsoft Way</span><span class="vcardline"><span class="locality">Redmond</span>, <span class="region">WA</span> <span class="postal-code">98052</span></span><span class="country-name vcardline">USA</span></span><span class="vcardline">EMail: <a><span class="email">henrikn@microsoft.com</span></a></span></address> 1520 <address class="vcard"><span class="vcardline"><span class="fn">Larry Masinter</span><span class="n hidden"><span class="family-name">Masinter</span><span class="given-name">Larry</span></span></span><span class="org vcardline">Adobe Systems, Incorporated</span><span class="adr"><span class="street-address vcardline">345 Park Ave</span><span class="vcardline"><span class="locality">San Jose</span>, <span class="region">CA</span> <span class="postal-code">95110</span></span><span class="country-name vcardline">USA</span></span><span class="vcardline">EMail: <a><span class="email">LMM@acm.org</span></a></span><span class="vcardline">URI: <a href="http://larry.masinter.net/" class="url">http://larry.masinter.net/</a></span></address> 1521 <address class="vcard"><span class="vcardline"><span class="fn">Paul J. Leach</span><span class="n hidden"><span class="family-name">Leach</span><span class="given-name">Paul J.</span></span></span><span class="org vcardline">Microsoft Corporation</span><span class="adr"><span class="street-address vcardline">1 Microsoft Way</span><span class="vcardline"><span class="locality">Redmond</span>, <span class="region">WA</span> <span class="postal-code">98052</span></span></span><span class="vcardline">EMail: <a><span class="email">paulle@microsoft.com</span></a></span></address> 1522 <address class="vcard"><span class="vcardline"><span class="fn">Tim Berners-Lee</span><span class="n hidden"><span class="family-name">Berners-Lee</span><span class="given-name">Tim</span></span></span><span class="org vcardline">World Wide Web Consortium</span><span class="adr"><span class="street-address vcardline">MIT Computer Science and Artificial Intelligence Laboratory</span><span class="street-address vcardline">The Stata Center, Building 32</span><span class="street-address vcardline">32 Vassar Street</span><span class="vcardline"><span class="locality">Cambridge</span>, <span class="region">MA</span> <span class="postal-code">02139</span></span><span class="country-name vcardline">USA</span></span><span class="vcardline">EMail: <a><span class="email">timbl@w3.org</span></a></span><span class="vcardline">URI: <a href="http://www.w3.org/People/Berners-Lee/" class="url">http://www.w3.org/People/Berners-Lee/</a></span></address> 1523 <address class="vcard"><span class="vcardline"><span class="fn">Yves Lafon</span> 1524 (editor) 1525 <span class="n hidden"><span class="family-name">Lafon</span><span class="given-name">Yves</span></span></span><span class="org vcardline">World Wide Web Consortium</span><span class="adr"><span class="street-address vcardline">W3C / ERCIM</span><span class="street-address vcardline">2004, rte des Lucioles</span><span class="vcardline"><span class="locality">Sophia-Antipolis</span>, <span class="region">AM</span> <span class="postal-code">06902</span></span><span class="country-name vcardline">France</span></span><span class="vcardline">EMail: <a><span class="email">ylafon@w3.org</span></a></span><span class="vcardline">URI: <a href="http://www.raubacapeu.net/people/yves/" class="url">http://www.raubacapeu.net/people/yves/</a></span></address> 1526 <address class="vcard"><span class="vcardline"><span class="fn">Julian F. Reschke</span> 1527 (editor) 1528 <span class="n hidden"><span class="family-name">Reschke</span><span class="given-name">Julian F.</span></span></span><span class="org vcardline">greenbytes GmbH</span><span class="adr"><span class="street-address vcardline">Hafenweg 16</span><span class="vcardline"><span class="locality">Muenster</span>, <span class="region">NW</span> <span class="postal-code">48155</span></span><span class="country-name vcardline">Germany</span></span><span class="vcardline tel">Phone: <a href="tel:+492512807760"><span class="value">+49 251 2807760</span></a></span><span class="vcardline tel"><span class="type">Fax</span>: <a href="fax:+492512807761"><span class="value">+49 251 2807761</span></a></span><span class="vcardline">EMail: <a><span class="email">julian.reschke@greenbytes.de</span></a></span><span class="vcardline">URI: <a href="http://greenbytes.de/tech/webdav/" class="url">http://greenbytes.de/tech/webdav/</a></span></address> 1529 <h1 id="rfc.section.A"><a href="#rfc.section.A">A.</a> <a id="compatibility" href="#compatibility">Compatibility with Previous Versions</a></h1> 1530 <div class="avoidbreak"> 1531 <h1 id="rfc.authors"><a href="#rfc.authors">Authors' Addresses</a></h1> 1532 <address class="vcard"><span class="vcardline"><span class="fn">Roy T. Fielding</span> 1533 (editor) 1534 <span class="n hidden"><span class="family-name">Fielding</span><span class="given-name">Roy T.</span></span></span><span class="org vcardline">Day Software</span><span class="adr"><span class="street-address vcardline">23 Corporate Plaza DR, Suite 280</span><span class="vcardline"><span class="locality">Newport Beach</span>, <span class="region">CA</span> <span class="postal-code">92660</span></span><span class="country-name vcardline">USA</span></span><span class="vcardline tel">Phone: <a href="tel:+1-949-706-5300"><span class="value">+1-949-706-5300</span></a></span><span class="vcardline tel"><span class="type">Fax</span>: <a href="fax:+1-949-706-5305"><span class="value">+1-949-706-5305</span></a></span><span class="vcardline">EMail: <a href="mailto:fielding@gbiv.com"><span class="email">fielding@gbiv.com</span></a></span><span class="vcardline">URI: <a href="http://roy.gbiv.com/" class="url">http://roy.gbiv.com/</a></span></address> 1535 <address class="vcard"><span class="vcardline"><span class="fn">Jim Gettys</span><span class="n hidden"><span class="family-name">Gettys</span><span class="given-name">Jim</span></span></span><span class="org vcardline">One Laptop per Child</span><span class="adr"><span class="street-address vcardline">21 Oak Knoll Road</span><span class="vcardline"><span class="locality">Carlisle</span>, <span class="region">MA</span> <span class="postal-code">01741</span></span><span class="country-name vcardline">USA</span></span><span class="vcardline">EMail: <a href="mailto:jg@laptop.org"><span class="email">jg@laptop.org</span></a></span><span class="vcardline">URI: <a href="http://www.laptop.org/" class="url">http://www.laptop.org/</a></span></address> 1536 <address class="vcard"><span class="vcardline"><span class="fn">Jeffrey C. Mogul</span><span class="n hidden"><span class="family-name">Mogul</span><span class="given-name">Jeffrey C.</span></span></span><span class="org vcardline">Hewlett-Packard Company</span><span class="adr"><span class="street-address vcardline">HP Labs, Large Scale Systems Group</span><span class="street-address vcardline">1501 Page Mill Road, MS 1177</span><span class="vcardline"><span class="locality">Palo Alto</span>, <span class="region">CA</span> <span class="postal-code">94304</span></span><span class="country-name vcardline">USA</span></span><span class="vcardline">EMail: <a href="mailto:JeffMogul@acm.org"><span class="email">JeffMogul@acm.org</span></a></span></address> 1537 <address class="vcard"><span class="vcardline"><span class="fn">Henrik Frystyk Nielsen</span><span class="n hidden"><span class="family-name">Frystyk</span></span></span><span class="org vcardline">Microsoft Corporation</span><span class="adr"><span class="street-address vcardline">1 Microsoft Way</span><span class="vcardline"><span class="locality">Redmond</span>, <span class="region">WA</span> <span class="postal-code">98052</span></span><span class="country-name vcardline">USA</span></span><span class="vcardline">EMail: <a href="mailto:henrikn@microsoft.com"><span class="email">henrikn@microsoft.com</span></a></span></address> 1538 <address class="vcard"><span class="vcardline"><span class="fn">Larry Masinter</span><span class="n hidden"><span class="family-name">Masinter</span><span class="given-name">Larry</span></span></span><span class="org vcardline">Adobe Systems, Incorporated</span><span class="adr"><span class="street-address vcardline">345 Park Ave</span><span class="vcardline"><span class="locality">San Jose</span>, <span class="region">CA</span> <span class="postal-code">95110</span></span><span class="country-name vcardline">USA</span></span><span class="vcardline">EMail: <a href="mailto:LMM@acm.org"><span class="email">LMM@acm.org</span></a></span><span class="vcardline">URI: <a href="http://larry.masinter.net/" class="url">http://larry.masinter.net/</a></span></address> 1539 <address class="vcard"><span class="vcardline"><span class="fn">Paul J. Leach</span><span class="n hidden"><span class="family-name">Leach</span><span class="given-name">Paul J.</span></span></span><span class="org vcardline">Microsoft Corporation</span><span class="adr"><span class="street-address vcardline">1 Microsoft Way</span><span class="vcardline"><span class="locality">Redmond</span>, <span class="region">WA</span> <span class="postal-code">98052</span></span></span><span class="vcardline">EMail: <a href="mailto:paulle@microsoft.com"><span class="email">paulle@microsoft.com</span></a></span></address> 1540 <address class="vcard"><span class="vcardline"><span class="fn">Tim Berners-Lee</span><span class="n hidden"><span class="family-name">Berners-Lee</span><span class="given-name">Tim</span></span></span><span class="org vcardline">World Wide Web Consortium</span><span class="adr"><span class="street-address vcardline">MIT Computer Science and Artificial Intelligence Laboratory</span><span class="street-address vcardline">The Stata Center, Building 32</span><span class="street-address vcardline">32 Vassar Street</span><span class="vcardline"><span class="locality">Cambridge</span>, <span class="region">MA</span> <span class="postal-code">02139</span></span><span class="country-name vcardline">USA</span></span><span class="vcardline">EMail: <a href="mailto:timbl@w3.org"><span class="email">timbl@w3.org</span></a></span><span class="vcardline">URI: <a href="http://www.w3.org/People/Berners-Lee/" class="url">http://www.w3.org/People/Berners-Lee/</a></span></address> 1541 <address class="vcard"><span class="vcardline"><span class="fn">Yves Lafon</span> 1542 (editor) 1543 <span class="n hidden"><span class="family-name">Lafon</span><span class="given-name">Yves</span></span></span><span class="org vcardline">World Wide Web Consortium</span><span class="adr"><span class="street-address vcardline">W3C / ERCIM</span><span class="street-address vcardline">2004, rte des Lucioles</span><span class="vcardline"><span class="locality">Sophia-Antipolis</span>, <span class="region">AM</span> <span class="postal-code">06902</span></span><span class="country-name vcardline">France</span></span><span class="vcardline">EMail: <a href="mailto:ylafon@w3.org"><span class="email">ylafon@w3.org</span></a></span><span class="vcardline">URI: <a href="http://www.raubacapeu.net/people/yves/" class="url">http://www.raubacapeu.net/people/yves/</a></span></address> 1544 <address class="vcard"><span class="vcardline"><span class="fn">Julian F. Reschke</span> 1545 (editor) 1546 <span class="n hidden"><span class="family-name">Reschke</span><span class="given-name">Julian F.</span></span></span><span class="org vcardline">greenbytes GmbH</span><span class="adr"><span class="street-address vcardline">Hafenweg 16</span><span class="vcardline"><span class="locality">Muenster</span>, <span class="region">NW</span> <span class="postal-code">48155</span></span><span class="country-name vcardline">Germany</span></span><span class="vcardline tel">Phone: <a href="tel:+492512807760"><span class="value">+49 251 2807760</span></a></span><span class="vcardline tel"><span class="type">Fax</span>: <a href="fax:+492512807761"><span class="value">+49 251 2807761</span></a></span><span class="vcardline">EMail: <a href="mailto:julian.reschke@greenbytes.de"><span class="email">julian.reschke@greenbytes.de</span></a></span><span class="vcardline">URI: <a href="http://greenbytes.de/tech/webdav/" class="url">http://greenbytes.de/tech/webdav/</a></span></address> 1547 </div> 1548 <h1 id="rfc.section.A" class="np"><a href="#rfc.section.A">A.</a> <a id="compatibility" href="#compatibility">Compatibility with Previous Versions</a></h1> 1530 1549 <h2 id="rfc.section.A.1"><a href="#rfc.section.A.1">A.1</a> <a id="changes.from.rfc.2068" href="#changes.from.rfc.2068">Changes from RFC 2068</a></h2> 1531 1550 <p id="rfc.section.A.1.p.1">A case was missed in the Cache-Control model of HTTP/1.1; s-maxage was introduced to add this missing case. (Sections <a href="#response.cacheability" title="Response Cacheability">2.1</a>, <a href="#header.cache-control" id="rfc.xref.header.cache-control.6" title="Cache-Control">3.2</a>). … … 1533 1552 <p id="rfc.section.A.1.p.2">Transfer-coding and message lengths all interact in ways that required fixing exactly when chunked encoding is used (to allow 1534 1553 for transfer encoding that may not be self delimiting); it was important to straighten out exactly how message lengths are 1535 computed. (see also <a href="#Part1" id="rfc.xref.Part1.14"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="#Part3" id="rfc.xref.Part3.2"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a> and <a href="#Part5" id="rfc.xref.Part5.4"><cite title="HTTP/1.1, part 5: Range Requests and Partial Responses">[Part5]</cite></a>) <span class="comment" >[rfc.comment.16: This used to refer to the text about non-modifiable headers, and will have to be updated later on. --jre]</span>1536 </p> 1537 <p id="rfc.section.A.1.p.3">Proxies should be able to add Content-Length when appropriate. <span class="comment" >[rfc.comment.17: This used to refer to the text about non-modifiable headers, and will have to be updated later on. --jre]</span>1554 computed. (see also <a href="#Part1" id="rfc.xref.Part1.14"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="#Part3" id="rfc.xref.Part3.2"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a> and <a href="#Part5" id="rfc.xref.Part5.4"><cite title="HTTP/1.1, part 5: Range Requests and Partial Responses">[Part5]</cite></a>) <span class="comment" id="rfc.comment.16">[<a href="#rfc.comment.16" class="smpl">rfc.comment.16</a>: This used to refer to the text about non-modifiable headers, and will have to be updated later on. --jre]</span> 1555 </p> 1556 <p id="rfc.section.A.1.p.3">Proxies should be able to add Content-Length when appropriate. <span class="comment" id="rfc.comment.17">[<a href="#rfc.comment.17" class="smpl">rfc.comment.17</a>: This used to refer to the text about non-modifiable headers, and will have to be updated later on. --jre]</span> 1538 1557 </p> 1539 1558 <p id="rfc.section.A.1.p.4">Range request responses would become very verbose if all meta-data were always returned; by allowing the server to only send … … 1707 1726 <div class="print2col"> 1708 1727 <ul class="ind"> 1709 <li class="indline0"><a id="rfc.index.A" href="#rfc.index.A"><b>A</b></a><ul class="ind">1710 <li class="indline1">age <a class="iref"href="#rfc.iref.a.1">1.2</a></li>1711 <li class="indline1">Age header <a class="iref" href="#rfc.xref.header.age.1">2.2</a>, <a class="iref" href="#rfc.iref.a.2"><b>3.1</b></a>, <a class="iref"href="#rfc.xref.header.age.2">5.1</a></li>1728 <li><a id="rfc.index.A" href="#rfc.index.A"><b>A</b></a><ul> 1729 <li>age <a href="#rfc.iref.a.1">1.2</a></li> 1730 <li>Age header <a href="#rfc.xref.header.age.1">2.2</a>, <a href="#rfc.iref.a.2"><b>3.1</b></a>, <a href="#rfc.xref.header.age.2">5.1</a></li> 1712 1731 </ul> 1713 1732 </li> 1714 <li class="indline0"><a id="rfc.index.C" href="#rfc.index.C"><b>C</b></a><ul class="ind">1715 <li class="indline1">cache <a class="iref"href="#rfc.iref.c.1">1.1</a></li>1716 <li class="indline1">Cache Directives 1717 <ul class="ind">1718 <li class="indline1">max-age <a class="iref" href="#rfc.iref.c.6"><b>3.2.1</b></a>, <a class="iref"href="#rfc.iref.c.17"><b>3.2.2</b></a></li>1719 <li class="indline1">max-stale <a class="iref"href="#rfc.iref.c.7"><b>3.2.1</b></a></li>1720 <li class="indline1">min-fresh <a class="iref"href="#rfc.iref.c.8"><b>3.2.1</b></a></li>1721 <li class="indline1">must-revalidate <a class="iref"href="#rfc.iref.c.15"><b>3.2.2</b></a></li>1722 <li class="indline1">no-cache <a class="iref" href="#rfc.iref.c.4"><b>3.2.1</b></a>, <a class="iref"href="#rfc.iref.c.13"><b>3.2.2</b></a></li>1723 <li class="indline1">no-store <a class="iref" href="#rfc.iref.c.5"><b>3.2.1</b></a>, <a class="iref"href="#rfc.iref.c.14"><b>3.2.2</b></a></li>1724 <li class="indline1">no-transform <a class="iref" href="#rfc.iref.c.9"><b>3.2.1</b></a>, <a class="iref"href="#rfc.iref.c.19"><b>3.2.2</b></a></li>1725 <li class="indline1">only-if-cached <a class="iref"href="#rfc.iref.c.10"><b>3.2.1</b></a></li>1726 <li class="indline1">private <a class="iref"href="#rfc.iref.c.12"><b>3.2.2</b></a></li>1727 <li class="indline1">proxy-revalidate <a class="iref"href="#rfc.iref.c.16"><b>3.2.2</b></a></li>1728 <li class="indline1">public <a class="iref"href="#rfc.iref.c.11"><b>3.2.2</b></a></li>1729 <li class="indline1">s-maxage <a class="iref"href="#rfc.iref.c.18"><b>3.2.2</b></a></li>1730 </ul> 1731 </li> 1732 <li class="indline1">Cache-Control header <a class="iref" href="#rfc.xref.header.cache-control.1">2.1</a>, <a class="iref" href="#rfc.xref.header.cache-control.2">2.1</a>, <a class="iref" href="#rfc.xref.header.cache-control.3">2.1</a>, <a class="iref" href="#rfc.xref.header.cache-control.4">2.2</a>, <a class="iref" href="#rfc.iref.c.3"><b>3.2</b></a>, <a class="iref" href="#rfc.xref.header.cache-control.5">5.1</a>, <a class="iref" href="#rfc.xref.header.cache-control.6">A.1</a>, <a class="iref"href="#rfc.xref.header.cache-control.7">A.1</a></li>1733 <li class="indline1">cacheable <a class="iref"href="#rfc.iref.c.2">1.2</a></li>1733 <li><a id="rfc.index.C" href="#rfc.index.C"><b>C</b></a><ul> 1734 <li>cache <a href="#rfc.iref.c.1">1.1</a></li> 1735 <li>Cache Directives 1736 <ul> 1737 <li>max-age <a href="#rfc.iref.c.6"><b>3.2.1</b></a>, <a href="#rfc.iref.c.17"><b>3.2.2</b></a></li> 1738 <li>max-stale <a href="#rfc.iref.c.7"><b>3.2.1</b></a></li> 1739 <li>min-fresh <a href="#rfc.iref.c.8"><b>3.2.1</b></a></li> 1740 <li>must-revalidate <a href="#rfc.iref.c.15"><b>3.2.2</b></a></li> 1741 <li>no-cache <a href="#rfc.iref.c.4"><b>3.2.1</b></a>, <a href="#rfc.iref.c.13"><b>3.2.2</b></a></li> 1742 <li>no-store <a href="#rfc.iref.c.5"><b>3.2.1</b></a>, <a href="#rfc.iref.c.14"><b>3.2.2</b></a></li> 1743 <li>no-transform <a href="#rfc.iref.c.9"><b>3.2.1</b></a>, <a href="#rfc.iref.c.19"><b>3.2.2</b></a></li> 1744 <li>only-if-cached <a href="#rfc.iref.c.10"><b>3.2.1</b></a></li> 1745 <li>private <a href="#rfc.iref.c.12"><b>3.2.2</b></a></li> 1746 <li>proxy-revalidate <a href="#rfc.iref.c.16"><b>3.2.2</b></a></li> 1747 <li>public <a href="#rfc.iref.c.11"><b>3.2.2</b></a></li> 1748 <li>s-maxage <a href="#rfc.iref.c.18"><b>3.2.2</b></a></li> 1749 </ul> 1750 </li> 1751 <li>Cache-Control header <a href="#rfc.xref.header.cache-control.1">2.1</a>, <a href="#rfc.xref.header.cache-control.2">2.1</a>, <a href="#rfc.xref.header.cache-control.3">2.1</a>, <a href="#rfc.xref.header.cache-control.4">2.2</a>, <a href="#rfc.iref.c.3"><b>3.2</b></a>, <a href="#rfc.xref.header.cache-control.5">5.1</a>, <a href="#rfc.xref.header.cache-control.6">A.1</a>, <a href="#rfc.xref.header.cache-control.7">A.1</a></li> 1752 <li>cacheable <a href="#rfc.iref.c.2">1.2</a></li> 1734 1753 </ul> 1735 1754 </li> 1736 <li class="indline0"><a id="rfc.index.E" href="#rfc.index.E"><b>E</b></a><ul class="ind">1737 <li class="indline1">Expires header <a class="iref" href="#rfc.xref.header.expires.1">2.3</a>, <a class="iref" href="#rfc.xref.header.expires.2">2.3.1</a>, <a class="iref" href="#rfc.iref.e.2"><b>3.3</b></a>, <a class="iref"href="#rfc.xref.header.expires.3">5.1</a></li>1738 <li class="indline1">explicit expiration time <a class="iref"href="#rfc.iref.e.1">1.2</a></li>1755 <li><a id="rfc.index.E" href="#rfc.index.E"><b>E</b></a><ul> 1756 <li>Expires header <a href="#rfc.xref.header.expires.1">2.3</a>, <a href="#rfc.xref.header.expires.2">2.3.1</a>, <a href="#rfc.iref.e.2"><b>3.3</b></a>, <a href="#rfc.xref.header.expires.3">5.1</a></li> 1757 <li>explicit expiration time <a href="#rfc.iref.e.1">1.2</a></li> 1739 1758 </ul> 1740 1759 </li> 1741 <li class="indline0"><a id="rfc.index.F" href="#rfc.index.F"><b>F</b></a><ul class="ind">1742 <li class="indline1">first-hand <a class="iref"href="#rfc.iref.f.1">1.2</a></li>1743 <li class="indline1">fresh <a class="iref"href="#rfc.iref.f.3">1.2</a></li>1744 <li class="indline1">freshness lifetime <a class="iref"href="#rfc.iref.f.2">1.2</a></li>1760 <li><a id="rfc.index.F" href="#rfc.index.F"><b>F</b></a><ul> 1761 <li>first-hand <a href="#rfc.iref.f.1">1.2</a></li> 1762 <li>fresh <a href="#rfc.iref.f.3">1.2</a></li> 1763 <li>freshness lifetime <a href="#rfc.iref.f.2">1.2</a></li> 1745 1764 </ul> 1746 1765 </li> 1747 <li class="indline0"><a id="rfc.index.G" href="#rfc.index.G"><b>G</b></a><ul class="ind">1748 <li class="indline1"><tt>Grammar</tt> 1749 <ul class="ind">1750 <li class="indline1"><tt>Age</tt> <a class="iref"href="#rfc.iref.g.1"><b>3.1</b></a></li>1751 <li class="indline1"><tt>Age-v</tt> <a class="iref"href="#rfc.iref.g.2"><b>3.1</b></a></li>1752 <li class="indline1"><tt>Cache-Control</tt> <a class="iref"href="#rfc.iref.g.4"><b>3.2</b></a></li>1753 <li class="indline1"><tt>Cache-Control-v</tt> <a class="iref"href="#rfc.iref.g.5"><b>3.2</b></a></li>1754 <li class="indline1"><tt>cache-extension</tt> <a class="iref"href="#rfc.iref.g.6"><b>3.2</b></a></li>1755 <li class="indline1"><tt>cache-request-directive</tt> <a class="iref"href="#rfc.iref.g.7"><b>3.2.1</b></a></li>1756 <li class="indline1"><tt>cache-response-directive</tt> <a class="iref"href="#rfc.iref.g.8"><b>3.2.2</b></a></li>1757 <li class="indline1"><tt>delta-seconds</tt> <a class="iref"href="#rfc.iref.g.3"><b>3.1</b></a></li>1758 <li class="indline1"><tt>Expires</tt> <a class="iref"href="#rfc.iref.g.9"><b>3.3</b></a></li>1759 <li class="indline1"><tt>Expires-v</tt> <a class="iref"href="#rfc.iref.g.10"><b>3.3</b></a></li>1760 <li class="indline1"><tt>extension-pragma</tt> <a class="iref"href="#rfc.iref.g.14"><b>3.4</b></a></li>1761 <li class="indline1"><tt>Pragma</tt> <a class="iref"href="#rfc.iref.g.11"><b>3.4</b></a></li>1762 <li class="indline1"><tt>pragma-directive</tt> <a class="iref"href="#rfc.iref.g.13"><b>3.4</b></a></li>1763 <li class="indline1"><tt>Pragma-v</tt> <a class="iref"href="#rfc.iref.g.12"><b>3.4</b></a></li>1764 <li class="indline1"><tt>Vary</tt> <a class="iref"href="#rfc.iref.g.15"><b>3.5</b></a></li>1765 <li class="indline1"><tt>Vary-v</tt> <a class="iref"href="#rfc.iref.g.16"><b>3.5</b></a></li>1766 <li class="indline1"><tt>warn-agent</tt> <a class="iref"href="#rfc.iref.g.21"><b>3.6</b></a></li>1767 <li class="indline1"><tt>warn-code</tt> <a class="iref"href="#rfc.iref.g.20"><b>3.6</b></a></li>1768 <li class="indline1"><tt>warn-date</tt> <a class="iref"href="#rfc.iref.g.23"><b>3.6</b></a></li>1769 <li class="indline1"><tt>warn-text</tt> <a class="iref"href="#rfc.iref.g.22"><b>3.6</b></a></li>1770 <li class="indline1"><tt>Warning</tt> <a class="iref"href="#rfc.iref.g.17"><b>3.6</b></a></li>1771 <li class="indline1"><tt>Warning-v</tt> <a class="iref"href="#rfc.iref.g.18"><b>3.6</b></a></li>1772 <li class="indline1"><tt>warning-value</tt> <a class="iref"href="#rfc.iref.g.19"><b>3.6</b></a></li>1766 <li><a id="rfc.index.G" href="#rfc.index.G"><b>G</b></a><ul> 1767 <li><tt>Grammar</tt> 1768 <ul> 1769 <li><tt>Age</tt> <a href="#rfc.iref.g.1"><b>3.1</b></a></li> 1770 <li><tt>Age-v</tt> <a href="#rfc.iref.g.2"><b>3.1</b></a></li> 1771 <li><tt>Cache-Control</tt> <a href="#rfc.iref.g.4"><b>3.2</b></a></li> 1772 <li><tt>Cache-Control-v</tt> <a href="#rfc.iref.g.5"><b>3.2</b></a></li> 1773 <li><tt>cache-extension</tt> <a href="#rfc.iref.g.6"><b>3.2</b></a></li> 1774 <li><tt>cache-request-directive</tt> <a href="#rfc.iref.g.7"><b>3.2.1</b></a></li> 1775 <li><tt>cache-response-directive</tt> <a href="#rfc.iref.g.8"><b>3.2.2</b></a></li> 1776 <li><tt>delta-seconds</tt> <a href="#rfc.iref.g.3"><b>3.1</b></a></li> 1777 <li><tt>Expires</tt> <a href="#rfc.iref.g.9"><b>3.3</b></a></li> 1778 <li><tt>Expires-v</tt> <a href="#rfc.iref.g.10"><b>3.3</b></a></li> 1779 <li><tt>extension-pragma</tt> <a href="#rfc.iref.g.14"><b>3.4</b></a></li> 1780 <li><tt>Pragma</tt> <a href="#rfc.iref.g.11"><b>3.4</b></a></li> 1781 <li><tt>pragma-directive</tt> <a href="#rfc.iref.g.13"><b>3.4</b></a></li> 1782 <li><tt>Pragma-v</tt> <a href="#rfc.iref.g.12"><b>3.4</b></a></li> 1783 <li><tt>Vary</tt> <a href="#rfc.iref.g.15"><b>3.5</b></a></li> 1784 <li><tt>Vary-v</tt> <a href="#rfc.iref.g.16"><b>3.5</b></a></li> 1785 <li><tt>warn-agent</tt> <a href="#rfc.iref.g.21"><b>3.6</b></a></li> 1786 <li><tt>warn-code</tt> <a href="#rfc.iref.g.20"><b>3.6</b></a></li> 1787 <li><tt>warn-date</tt> <a href="#rfc.iref.g.23"><b>3.6</b></a></li> 1788 <li><tt>warn-text</tt> <a href="#rfc.iref.g.22"><b>3.6</b></a></li> 1789 <li><tt>Warning</tt> <a href="#rfc.iref.g.17"><b>3.6</b></a></li> 1790 <li><tt>Warning-v</tt> <a href="#rfc.iref.g.18"><b>3.6</b></a></li> 1791 <li><tt>warning-value</tt> <a href="#rfc.iref.g.19"><b>3.6</b></a></li> 1773 1792 </ul> 1774 1793 </li> 1775 1794 </ul> 1776 1795 </li> 1777 <li class="indline0"><a id="rfc.index.H" href="#rfc.index.H"><b>H</b></a><ul class="ind">1778 <li class="indline1">Headers 1779 <ul class="ind">1780 <li class="indline1">Age <a class="iref" href="#rfc.xref.header.age.1">2.2</a>, <a class="iref" href="#rfc.iref.h.2"><b>3.1</b></a>, <a class="iref"href="#rfc.xref.header.age.2">5.1</a></li>1781 <li class="indline1">Cache-Control <a class="iref" href="#rfc.xref.header.cache-control.1">2.1</a>, <a class="iref" href="#rfc.xref.header.cache-control.2">2.1</a>, <a class="iref" href="#rfc.xref.header.cache-control.3">2.1</a>, <a class="iref" href="#rfc.xref.header.cache-control.4">2.2</a>, <a class="iref" href="#rfc.iref.h.3"><b>3.2</b></a>, <a class="iref" href="#rfc.xref.header.cache-control.5">5.1</a>, <a class="iref" href="#rfc.xref.header.cache-control.6">A.1</a>, <a class="iref"href="#rfc.xref.header.cache-control.7">A.1</a></li>1782 <li class="indline1">Expires <a class="iref" href="#rfc.xref.header.expires.1">2.3</a>, <a class="iref" href="#rfc.xref.header.expires.2">2.3.1</a>, <a class="iref" href="#rfc.iref.h.4"><b>3.3</b></a>, <a class="iref"href="#rfc.xref.header.expires.3">5.1</a></li>1783 <li class="indline1">Pragma <a class="iref" href="#rfc.xref.header.pragma.1">2.2</a>, <a class="iref" href="#rfc.xref.header.pragma.2">3.2</a>, <a class="iref" href="#rfc.iref.h.5"><b>3.4</b></a>, <a class="iref"href="#rfc.xref.header.pragma.3">5.1</a></li>1784 <li class="indline1">Vary <a class="iref" href="#rfc.xref.header.vary.1">2.6</a>, <a class="iref" href="#rfc.iref.h.6"><b>3.5</b></a>, <a class="iref"href="#rfc.xref.header.vary.2">5.1</a></li>1785 <li class="indline1">Warning <a class="iref" href="#rfc.xref.header.warning.1">2.3.3</a>, <a class="iref" href="#rfc.xref.header.warning.2">2.4</a>, <a class="iref" href="#rfc.xref.header.warning.3">2.7</a>, <a class="iref" href="#rfc.iref.h.7"><b>3.6</b></a>, <a class="iref" href="#rfc.xref.header.warning.4">5.1</a>, <a class="iref"href="#rfc.xref.header.warning.5">A.1</a></li>1786 </ul> 1787 </li> 1788 <li class="indline1">heuristic expiration time <a class="iref"href="#rfc.iref.h.1">1.2</a></li>1796 <li><a id="rfc.index.H" href="#rfc.index.H"><b>H</b></a><ul> 1797 <li>Headers 1798 <ul> 1799 <li>Age <a href="#rfc.xref.header.age.1">2.2</a>, <a href="#rfc.iref.h.2"><b>3.1</b></a>, <a href="#rfc.xref.header.age.2">5.1</a></li> 1800 <li>Cache-Control <a href="#rfc.xref.header.cache-control.1">2.1</a>, <a href="#rfc.xref.header.cache-control.2">2.1</a>, <a href="#rfc.xref.header.cache-control.3">2.1</a>, <a href="#rfc.xref.header.cache-control.4">2.2</a>, <a href="#rfc.iref.h.3"><b>3.2</b></a>, <a href="#rfc.xref.header.cache-control.5">5.1</a>, <a href="#rfc.xref.header.cache-control.6">A.1</a>, <a href="#rfc.xref.header.cache-control.7">A.1</a></li> 1801 <li>Expires <a href="#rfc.xref.header.expires.1">2.3</a>, <a href="#rfc.xref.header.expires.2">2.3.1</a>, <a href="#rfc.iref.h.4"><b>3.3</b></a>, <a href="#rfc.xref.header.expires.3">5.1</a></li> 1802 <li>Pragma <a href="#rfc.xref.header.pragma.1">2.2</a>, <a href="#rfc.xref.header.pragma.2">3.2</a>, <a href="#rfc.iref.h.5"><b>3.4</b></a>, <a href="#rfc.xref.header.pragma.3">5.1</a></li> 1803 <li>Vary <a href="#rfc.xref.header.vary.1">2.6</a>, <a href="#rfc.iref.h.6"><b>3.5</b></a>, <a href="#rfc.xref.header.vary.2">5.1</a></li> 1804 <li>Warning <a href="#rfc.xref.header.warning.1">2.3.3</a>, <a href="#rfc.xref.header.warning.2">2.4</a>, <a href="#rfc.xref.header.warning.3">2.7</a>, <a href="#rfc.iref.h.7"><b>3.6</b></a>, <a href="#rfc.xref.header.warning.4">5.1</a>, <a href="#rfc.xref.header.warning.5">A.1</a></li> 1805 </ul> 1806 </li> 1807 <li>heuristic expiration time <a href="#rfc.iref.h.1">1.2</a></li> 1789 1808 </ul> 1790 1809 </li> 1791 <li class="indline0"><a id="rfc.index.I" href="#rfc.index.I"><b>I</b></a><ul class="ind">1792 <li class="indline1"><em>ISO-8859-1</em> <a class="iref" href="#rfc.xref.ISO-8859-1.1">3.6</a>, <a class="iref"href="#ISO-8859-1"><b>8.1</b></a></li>1810 <li><a id="rfc.index.I" href="#rfc.index.I"><b>I</b></a><ul> 1811 <li><em>ISO-8859-1</em> <a href="#rfc.xref.ISO-8859-1.1">3.6</a>, <a href="#ISO-8859-1"><b>8.1</b></a></li> 1793 1812 </ul> 1794 1813 </li> 1795 <li class="indline0"><a id="rfc.index.M" href="#rfc.index.M"><b>M</b></a><ul class="ind">1796 <li class="indline1">max-age 1797 <ul class="ind">1798 <li class="indline1">Cache Directive <a class="iref" href="#rfc.iref.m.1"><b>3.2.1</b></a>, <a class="iref"href="#rfc.iref.m.5"><b>3.2.2</b></a></li>1799 </ul> 1800 </li> 1801 <li class="indline1">max-stale 1802 <ul class="ind">1803 <li class="indline1">Cache Directive <a class="iref"href="#rfc.iref.m.2"><b>3.2.1</b></a></li>1804 </ul> 1805 </li> 1806 <li class="indline1">min-fresh 1807 <ul class="ind">1808 <li class="indline1">Cache Directive <a class="iref"href="#rfc.iref.m.3"><b>3.2.1</b></a></li>1809 </ul> 1810 </li> 1811 <li class="indline1">must-revalidate 1812 <ul class="ind">1813 <li class="indline1">Cache Directive <a class="iref"href="#rfc.iref.m.4"><b>3.2.2</b></a></li>1814 <li><a id="rfc.index.M" href="#rfc.index.M"><b>M</b></a><ul> 1815 <li>max-age 1816 <ul> 1817 <li>Cache Directive <a href="#rfc.iref.m.1"><b>3.2.1</b></a>, <a href="#rfc.iref.m.5"><b>3.2.2</b></a></li> 1818 </ul> 1819 </li> 1820 <li>max-stale 1821 <ul> 1822 <li>Cache Directive <a href="#rfc.iref.m.2"><b>3.2.1</b></a></li> 1823 </ul> 1824 </li> 1825 <li>min-fresh 1826 <ul> 1827 <li>Cache Directive <a href="#rfc.iref.m.3"><b>3.2.1</b></a></li> 1828 </ul> 1829 </li> 1830 <li>must-revalidate 1831 <ul> 1832 <li>Cache Directive <a href="#rfc.iref.m.4"><b>3.2.2</b></a></li> 1814 1833 </ul> 1815 1834 </li> 1816 1835 </ul> 1817 1836 </li> 1818 <li class="indline0"><a id="rfc.index.N" href="#rfc.index.N"><b>N</b></a><ul class="ind">1819 <li class="indline1">no-cache 1820 <ul class="ind">1821 <li class="indline1">Cache Directive <a class="iref" href="#rfc.iref.n.1"><b>3.2.1</b></a>, <a class="iref"href="#rfc.iref.n.4"><b>3.2.2</b></a></li>1822 </ul> 1823 </li> 1824 <li class="indline1">no-store 1825 <ul class="ind">1826 <li class="indline1">Cache Directive <a class="iref" href="#rfc.iref.n.2"><b>3.2.1</b></a>, <a class="iref"href="#rfc.iref.n.5"><b>3.2.2</b></a></li>1827 </ul> 1828 </li> 1829 <li class="indline1">no-transform 1830 <ul class="ind">1831 <li class="indline1">Cache Directive <a class="iref" href="#rfc.iref.n.3"><b>3.2.1</b></a>, <a class="iref"href="#rfc.iref.n.6"><b>3.2.2</b></a></li>1837 <li><a id="rfc.index.N" href="#rfc.index.N"><b>N</b></a><ul> 1838 <li>no-cache 1839 <ul> 1840 <li>Cache Directive <a href="#rfc.iref.n.1"><b>3.2.1</b></a>, <a href="#rfc.iref.n.4"><b>3.2.2</b></a></li> 1841 </ul> 1842 </li> 1843 <li>no-store 1844 <ul> 1845 <li>Cache Directive <a href="#rfc.iref.n.2"><b>3.2.1</b></a>, <a href="#rfc.iref.n.5"><b>3.2.2</b></a></li> 1846 </ul> 1847 </li> 1848 <li>no-transform 1849 <ul> 1850 <li>Cache Directive <a href="#rfc.iref.n.3"><b>3.2.1</b></a>, <a href="#rfc.iref.n.6"><b>3.2.2</b></a></li> 1832 1851 </ul> 1833 1852 </li> 1834 1853 </ul> 1835 1854 </li> 1836 <li class="indline0"><a id="rfc.index.O" href="#rfc.index.O"><b>O</b></a><ul class="ind">1837 <li class="indline1">only-if-cached 1838 <ul class="ind">1839 <li class="indline1">Cache Directive <a class="iref"href="#rfc.iref.o.1"><b>3.2.1</b></a></li>1855 <li><a id="rfc.index.O" href="#rfc.index.O"><b>O</b></a><ul> 1856 <li>only-if-cached 1857 <ul> 1858 <li>Cache Directive <a href="#rfc.iref.o.1"><b>3.2.1</b></a></li> 1840 1859 </ul> 1841 1860 </li> 1842 1861 </ul> 1843 1862 </li> 1844 <li class="indline0"><a id="rfc.index.P" href="#rfc.index.P"><b>P</b></a><ul class="ind">1845 <li class="indline1"><em>Part1</em> <a class="iref" href="#rfc.xref.Part1.1">1.4</a>, <a class="iref" href="#rfc.xref.Part1.2">1.4.1</a>, <a class="iref" href="#rfc.xref.Part1.3">1.4.1</a>, <a class="iref" href="#rfc.xref.Part1.4">1.4.1</a>, <a class="iref" href="#rfc.xref.Part1.5">1.4.1</a>, <a class="iref" href="#rfc.xref.Part1.6">1.4.2</a>, <a class="iref" href="#rfc.xref.Part1.7">1.4.2</a>, <a class="iref" href="#rfc.xref.Part1.8">1.4.2</a>, <a class="iref" href="#rfc.xref.Part1.9">1.4.2</a>, <a class="iref" href="#rfc.xref.Part1.10">1.4.2</a>, <a class="iref" href="#rfc.xref.Part1.11">2.3.2</a>, <a class="iref" href="#rfc.xref.Part1.12">2.6</a>, <a class="iref" href="#rfc.xref.Part1.13">3.3</a>, <a class="iref" href="#Part1"><b>8.1</b></a>, <a class="iref" href="#rfc.xref.Part1.14">A.1</a><ul class="ind">1846 <li class="indline1"><em>Section 1.2</em> <a class="iref"href="#rfc.xref.Part1.1">1.4</a></li>1847 <li class="indline1"><em>Section 1.2.2</em> <a class="iref" href="#rfc.xref.Part1.2">1.4.1</a>, <a class="iref" href="#rfc.xref.Part1.3">1.4.1</a>, <a class="iref" href="#rfc.xref.Part1.4">1.4.1</a>, <a class="iref"href="#rfc.xref.Part1.5">1.4.1</a></li>1848 <li class="indline1"><em>Section 2.1</em> <a class="iref" href="#rfc.xref.Part1.8">1.4.2</a>, <a class="iref"href="#rfc.xref.Part1.10">1.4.2</a></li>1849 <li class="indline1"><em>Section 3.2.1</em> <a class="iref" href="#rfc.xref.Part1.7">1.4.2</a>, <a class="iref"href="#rfc.xref.Part1.13">3.3</a></li>1850 <li class="indline1"><em>Section 4.2</em> <a class="iref" href="#rfc.xref.Part1.6">1.4.2</a>, <a class="iref"href="#rfc.xref.Part1.12">2.6</a></li>1851 <li class="indline1"><em>Section 8.3</em> <a class="iref"href="#rfc.xref.Part1.11">2.3.2</a></li>1852 <li class="indline1"><em>Section 8.9</em> <a class="iref"href="#rfc.xref.Part1.9">1.4.2</a></li>1853 </ul> 1854 </li> 1855 <li class="indline1"><em>Part2</em> <a class="iref" href="#rfc.xref.Part2.1">2.2</a>, <a class="iref" href="#rfc.xref.Part2.2">2.5</a>, <a class="iref" href="#Part2"><b>8.1</b></a><ul class="ind">1856 <li class="indline1"><em>Section 7.1.1</em> <a class="iref" href="#rfc.xref.Part2.1">2.2</a>, <a class="iref"href="#rfc.xref.Part2.2">2.5</a></li>1857 </ul> 1858 </li> 1859 <li class="indline1"><em>Part3</em> <a class="iref" href="#rfc.xref.Part3.1">2.6</a>, <a class="iref" href="#Part3"><b>8.1</b></a>, <a class="iref" href="#rfc.xref.Part3.2">A.1</a><ul class="ind">1860 <li class="indline1"><em>Section 4.1</em> <a class="iref"href="#rfc.xref.Part3.1">2.6</a></li>1861 </ul> 1862 </li> 1863 <li class="indline1"><em>Part4</em> <a class="iref" href="#rfc.xref.Part4.1">2.3.1.1</a>, <a class="iref" href="#rfc.xref.Part4.2">2.4</a>, <a class="iref" href="#Part4"><b>8.1</b></a><ul class="ind">1864 <li class="indline1"><em>Section 6.6</em> <a class="iref"href="#rfc.xref.Part4.1">2.3.1.1</a></li>1865 </ul> 1866 </li> 1867 <li class="indline1"><em>Part5</em> <a class="iref" href="#rfc.xref.Part5.1">2.1.1</a>, <a class="iref" href="#rfc.xref.Part5.2">2.1.1</a>, <a class="iref" href="#rfc.xref.Part5.3">2.7</a>, <a class="iref" href="#Part5"><b>8.1</b></a>, <a class="iref" href="#rfc.xref.Part5.4">A.1</a><ul class="ind">1868 <li class="indline1"><em>Section 4</em> <a class="iref" href="#rfc.xref.Part5.2">2.1.1</a>, <a class="iref"href="#rfc.xref.Part5.3">2.7</a></li>1869 </ul> 1870 </li> 1871 <li class="indline1"><em>Part7</em> <a class="iref" href="#rfc.xref.Part7.1">2.1</a>, <a class="iref" href="#rfc.xref.Part7.2">3.2.2</a>, <a class="iref" href="#Part7"><b>8.1</b></a><ul class="ind">1872 <li class="indline1"><em>Section 3.1</em> <a class="iref" href="#rfc.xref.Part7.1">2.1</a>, <a class="iref"href="#rfc.xref.Part7.2">3.2.2</a></li>1873 </ul> 1874 </li> 1875 <li class="indline1">Pragma header <a class="iref" href="#rfc.xref.header.pragma.1">2.2</a>, <a class="iref" href="#rfc.xref.header.pragma.2">3.2</a>, <a class="iref" href="#rfc.iref.p.4"><b>3.4</b></a>, <a class="iref"href="#rfc.xref.header.pragma.3">5.1</a></li>1876 <li class="indline1">private 1877 <ul class="ind">1878 <li class="indline1">Cache Directive <a class="iref"href="#rfc.iref.p.2"><b>3.2.2</b></a></li>1879 </ul> 1880 </li> 1881 <li class="indline1">proxy-revalidate 1882 <ul class="ind">1883 <li class="indline1">Cache Directive <a class="iref"href="#rfc.iref.p.3"><b>3.2.2</b></a></li>1884 </ul> 1885 </li> 1886 <li class="indline1">public 1887 <ul class="ind">1888 <li class="indline1">Cache Directive <a class="iref"href="#rfc.iref.p.1"><b>3.2.2</b></a></li>1863 <li><a id="rfc.index.P" href="#rfc.index.P"><b>P</b></a><ul> 1864 <li><em>Part1</em> <a href="#rfc.xref.Part1.1">1.4</a>, <a href="#rfc.xref.Part1.2">1.4.1</a>, <a href="#rfc.xref.Part1.3">1.4.1</a>, <a href="#rfc.xref.Part1.4">1.4.1</a>, <a href="#rfc.xref.Part1.5">1.4.1</a>, <a href="#rfc.xref.Part1.6">1.4.2</a>, <a href="#rfc.xref.Part1.7">1.4.2</a>, <a href="#rfc.xref.Part1.8">1.4.2</a>, <a href="#rfc.xref.Part1.9">1.4.2</a>, <a href="#rfc.xref.Part1.10">1.4.2</a>, <a href="#rfc.xref.Part1.11">2.3.2</a>, <a href="#rfc.xref.Part1.12">2.6</a>, <a href="#rfc.xref.Part1.13">3.3</a>, <a href="#Part1"><b>8.1</b></a>, <a href="#rfc.xref.Part1.14">A.1</a><ul> 1865 <li><em>Section 1.2</em> <a href="#rfc.xref.Part1.1">1.4</a></li> 1866 <li><em>Section 1.2.2</em> <a href="#rfc.xref.Part1.2">1.4.1</a>, <a href="#rfc.xref.Part1.3">1.4.1</a>, <a href="#rfc.xref.Part1.4">1.4.1</a>, <a href="#rfc.xref.Part1.5">1.4.1</a></li> 1867 <li><em>Section 2.1</em> <a href="#rfc.xref.Part1.8">1.4.2</a>, <a href="#rfc.xref.Part1.10">1.4.2</a></li> 1868 <li><em>Section 3.2.1</em> <a href="#rfc.xref.Part1.7">1.4.2</a>, <a href="#rfc.xref.Part1.13">3.3</a></li> 1869 <li><em>Section 4.2</em> <a href="#rfc.xref.Part1.6">1.4.2</a>, <a href="#rfc.xref.Part1.12">2.6</a></li> 1870 <li><em>Section 8.3</em> <a href="#rfc.xref.Part1.11">2.3.2</a></li> 1871 <li><em>Section 8.9</em> <a href="#rfc.xref.Part1.9">1.4.2</a></li> 1872 </ul> 1873 </li> 1874 <li><em>Part2</em> <a href="#rfc.xref.Part2.1">2.2</a>, <a href="#rfc.xref.Part2.2">2.5</a>, <a href="#Part2"><b>8.1</b></a><ul> 1875 <li><em>Section 7.1.1</em> <a href="#rfc.xref.Part2.1">2.2</a>, <a href="#rfc.xref.Part2.2">2.5</a></li> 1876 </ul> 1877 </li> 1878 <li><em>Part3</em> <a href="#rfc.xref.Part3.1">2.6</a>, <a href="#Part3"><b>8.1</b></a>, <a href="#rfc.xref.Part3.2">A.1</a><ul> 1879 <li><em>Section 4.1</em> <a href="#rfc.xref.Part3.1">2.6</a></li> 1880 </ul> 1881 </li> 1882 <li><em>Part4</em> <a href="#rfc.xref.Part4.1">2.3.1.1</a>, <a href="#rfc.xref.Part4.2">2.4</a>, <a href="#Part4"><b>8.1</b></a><ul> 1883 <li><em>Section 6.6</em> <a href="#rfc.xref.Part4.1">2.3.1.1</a></li> 1884 </ul> 1885 </li> 1886 <li><em>Part5</em> <a href="#rfc.xref.Part5.1">2.1.1</a>, <a href="#rfc.xref.Part5.2">2.1.1</a>, <a href="#rfc.xref.Part5.3">2.7</a>, <a href="#Part5"><b>8.1</b></a>, <a href="#rfc.xref.Part5.4">A.1</a><ul> 1887 <li><em>Section 4</em> <a href="#rfc.xref.Part5.2">2.1.1</a>, <a href="#rfc.xref.Part5.3">2.7</a></li> 1888 </ul> 1889 </li> 1890 <li><em>Part7</em> <a href="#rfc.xref.Part7.1">2.1</a>, <a href="#rfc.xref.Part7.2">3.2.2</a>, <a href="#Part7"><b>8.1</b></a><ul> 1891 <li><em>Section 3.1</em> <a href="#rfc.xref.Part7.1">2.1</a>, <a href="#rfc.xref.Part7.2">3.2.2</a></li> 1892 </ul> 1893 </li> 1894 <li>Pragma header <a href="#rfc.xref.header.pragma.1">2.2</a>, <a href="#rfc.xref.header.pragma.2">3.2</a>, <a href="#rfc.iref.p.4"><b>3.4</b></a>, <a href="#rfc.xref.header.pragma.3">5.1</a></li> 1895 <li>private 1896 <ul> 1897 <li>Cache Directive <a href="#rfc.iref.p.2"><b>3.2.2</b></a></li> 1898 </ul> 1899 </li> 1900 <li>proxy-revalidate 1901 <ul> 1902 <li>Cache Directive <a href="#rfc.iref.p.3"><b>3.2.2</b></a></li> 1903 </ul> 1904 </li> 1905 <li>public 1906 <ul> 1907 <li>Cache Directive <a href="#rfc.iref.p.1"><b>3.2.2</b></a></li> 1889 1908 </ul> 1890 1909 </li> 1891 1910 </ul> 1892 1911 </li> 1893 <li class="indline0"><a id="rfc.index.R" href="#rfc.index.R"><b>R</b></a><ul class="ind">1894 <li class="indline1"><em>RFC1305</em> <a class="iref" href="#rfc.xref.RFC1305.1">2.3.2</a>, <a class="iref"href="#RFC1305"><b>8.2</b></a></li>1895 <li class="indline1"><em>RFC2047</em> <a class="iref" href="#rfc.xref.RFC2047.1">3.6</a>, <a class="iref"href="#RFC2047"><b>8.1</b></a></li>1896 <li class="indline1"><em>RFC2119</em> <a class="iref" href="#rfc.xref.RFC2119.1">1.3</a>, <a class="iref"href="#RFC2119"><b>8.1</b></a></li>1897 <li class="indline1"><em>RFC2616</em> <a class="iref" href="#RFC2616"><b>8.2</b></a>, <a class="iref"href="#rfc.xref.RFC2616.1">C.1</a></li>1898 <li class="indline1"><em>RFC3864</em> <a class="iref" href="#rfc.xref.RFC3864.1">5.1</a>, <a class="iref"href="#RFC3864"><b>8.2</b></a></li>1899 <li class="indline1"><em>RFC5234</em> <a class="iref" href="#rfc.xref.RFC5234.1">1.4</a>, <a class="iref" href="#rfc.xref.RFC5234.2">1.4</a>, <a class="iref" href="#RFC5234"><b>8.1</b></a><ul class="ind">1900 <li class="indline1"><em>Appendix B.1</em> <a class="iref"href="#rfc.xref.RFC5234.2">1.4</a></li>1912 <li><a id="rfc.index.R" href="#rfc.index.R"><b>R</b></a><ul> 1913 <li><em>RFC1305</em> <a href="#rfc.xref.RFC1305.1">2.3.2</a>, <a href="#RFC1305"><b>8.2</b></a></li> 1914 <li><em>RFC2047</em> <a href="#rfc.xref.RFC2047.1">3.6</a>, <a href="#RFC2047"><b>8.1</b></a></li> 1915 <li><em>RFC2119</em> <a href="#rfc.xref.RFC2119.1">1.3</a>, <a href="#RFC2119"><b>8.1</b></a></li> 1916 <li><em>RFC2616</em> <a href="#RFC2616"><b>8.2</b></a>, <a href="#rfc.xref.RFC2616.1">C.1</a></li> 1917 <li><em>RFC3864</em> <a href="#rfc.xref.RFC3864.1">5.1</a>, <a href="#RFC3864"><b>8.2</b></a></li> 1918 <li><em>RFC5234</em> <a href="#rfc.xref.RFC5234.1">1.4</a>, <a href="#rfc.xref.RFC5234.2">1.4</a>, <a href="#RFC5234"><b>8.1</b></a><ul> 1919 <li><em>Appendix B.1</em> <a href="#rfc.xref.RFC5234.2">1.4</a></li> 1901 1920 </ul> 1902 1921 </li> 1903 1922 </ul> 1904 1923 </li> 1905 <li class="indline0"><a id="rfc.index.S" href="#rfc.index.S"><b>S</b></a><ul class="ind">1906 <li class="indline1">s-maxage 1907 <ul class="ind">1908 <li class="indline1">Cache Directive <a class="iref"href="#rfc.iref.s.2"><b>3.2.2</b></a></li>1909 </ul> 1910 </li> 1911 <li class="indline1">stale <a class="iref"href="#rfc.iref.s.1">1.2</a></li>1924 <li><a id="rfc.index.S" href="#rfc.index.S"><b>S</b></a><ul> 1925 <li>s-maxage 1926 <ul> 1927 <li>Cache Directive <a href="#rfc.iref.s.2"><b>3.2.2</b></a></li> 1928 </ul> 1929 </li> 1930 <li>stale <a href="#rfc.iref.s.1">1.2</a></li> 1912 1931 </ul> 1913 1932 </li> 1914 <li class="indline0"><a id="rfc.index.V" href="#rfc.index.V"><b>V</b></a><ul class="ind">1915 <li class="indline1">validator <a class="iref" href="#rfc.iref.v.1">1.2</a>, <a class="iref"href="#rfc.iref.v.2">1.2</a></li>1916 <li class="indline1">Vary header <a class="iref" href="#rfc.xref.header.vary.1">2.6</a>, <a class="iref" href="#rfc.iref.v.3"><b>3.5</b></a>, <a class="iref"href="#rfc.xref.header.vary.2">5.1</a></li>1933 <li><a id="rfc.index.V" href="#rfc.index.V"><b>V</b></a><ul> 1934 <li>validator <a href="#rfc.iref.v.1">1.2</a>, <a href="#rfc.iref.v.2">1.2</a></li> 1935 <li>Vary header <a href="#rfc.xref.header.vary.1">2.6</a>, <a href="#rfc.iref.v.3"><b>3.5</b></a>, <a href="#rfc.xref.header.vary.2">5.1</a></li> 1917 1936 </ul> 1918 1937 </li> 1919 <li class="indline0"><a id="rfc.index.W" href="#rfc.index.W"><b>W</b></a><ul class="ind">1920 <li class="indline1">Warning header <a class="iref" href="#rfc.xref.header.warning.1">2.3.3</a>, <a class="iref" href="#rfc.xref.header.warning.2">2.4</a>, <a class="iref" href="#rfc.xref.header.warning.3">2.7</a>, <a class="iref" href="#rfc.iref.w.1"><b>3.6</b></a>, <a class="iref" href="#rfc.xref.header.warning.4">5.1</a>, <a class="iref"href="#rfc.xref.header.warning.5">A.1</a></li>1938 <li><a id="rfc.index.W" href="#rfc.index.W"><b>W</b></a><ul> 1939 <li>Warning header <a href="#rfc.xref.header.warning.1">2.3.3</a>, <a href="#rfc.xref.header.warning.2">2.4</a>, <a href="#rfc.xref.header.warning.3">2.7</a>, <a href="#rfc.iref.w.1"><b>3.6</b></a>, <a href="#rfc.xref.header.warning.4">5.1</a>, <a href="#rfc.xref.header.warning.5">A.1</a></li> 1921 1940 </ul> 1922 1941 </li>
Note: See TracChangeset
for help on using the changeset viewer.