Changeset 2041 for draft-ietf-httpbis/latest/p1-messaging.xml
- Timestamp:
- 08/12/12 08:00:42 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
draft-ietf-httpbis/latest/p1-messaging.xml
r2040 r2041 2599 2599 </section> 2600 2600 2601 <section title="Transformation" anchor="message.transformation"> 2601 <section title="Transformations" anchor="message.transformations"> 2602 <t> 2603 Some intermediaries include features for transforming messages and their 2604 payloads. A transforming proxy might, for example, convert between image 2605 formats in order to save cache space or to reduce the amount of traffic on 2606 a slow link. However, operational problems might occur when these 2607 transformations are applied to payloads intended for critical applications, 2608 such as medical imaging or scientific data analysis, particularly when 2609 integrity checks or digital signatures are used to ensure that the payload 2610 received is identical to the original. 2611 </t> 2602 2612 <t> 2603 2613 If a proxy receives a request-target with a host name that is not a … … 2607 2617 </t> 2608 2618 <t> 2609 A non-transforming proxy &MUST-NOT; modify the "path-absolute" and "query" 2610 parts of the received request-target when forwarding it to the next inbound 2611 server, except as noted above to replace an empty path with "/" or "*". 2612 </t> 2613 <t> 2614 A non-transforming proxy &MUST; preserve the message payload (&payload;), 2615 though it &MAY; change the message body through application or removal 2616 of a transfer coding (<xref target="transfer.codings"/>). 2617 </t> 2618 <t> 2619 A non-transforming proxy &SHOULD-NOT; modify header fields that provide 2620 information about the end points of the communication chain, the resource 2621 state, or the selected representation. 2622 </t> 2623 <t> 2624 A non-transforming proxy &MUST-NOT; modify any of the following fields in a 2625 request or response, and it &MUST-NOT; add any of these fields if not 2626 already present: 2627 <list style="symbols"> 2628 <t><x:ref>Allow</x:ref> (&header-allow;)</t> 2629 <t><x:ref>Content-Location</x:ref> (&header-content-location;)</t> 2630 <t>Content-MD5 (<xref target="RFC2616" x:fmt="of" x:sec="14.15"/>)</t> 2631 <t><x:ref>ETag</x:ref> (&header-etag;)</t> 2632 <t><x:ref>Last-Modified</x:ref> (&header-last-modified;)</t> 2633 <t><x:ref>Server</x:ref> (&header-server;)</t> 2634 </list> 2635 </t> 2636 <t> 2637 A non-transforming proxy &MUST-NOT; modify an <x:ref>Expires</x:ref> 2638 header field (&header-expires;) if already present in a response, but 2639 it &MAY; add an <x:ref>Expires</x:ref> header field with a field-value 2640 identical to that of the <x:ref>Date</x:ref> header field. 2641 </t> 2642 <t> 2643 A proxy &MUST-NOT; modify or add any of the following fields in a 2644 message that contains the no-transform cache-control directive: 2645 <list style="symbols"> 2646 <t><x:ref>Content-Encoding</x:ref> (&header-content-encoding;)</t> 2647 <t><x:ref>Content-Range</x:ref> (&header-content-range;)</t> 2648 <t><x:ref>Content-Type</x:ref> (&header-content-type;)</t> 2649 </list> 2650 </t> 2651 <t> 2652 A transforming proxy &MAY; modify or add these fields to a message 2653 that does not include no-transform, but if it does so, it &MUST; add a 2654 Warning 214 (Transformation applied) if one does not already appear 2655 in the message (see &header-warning;). 2656 </t> 2657 <x:note> 2658 <t> 2659 <x:h>Warning:</x:h> Unnecessary modification of header fields might 2660 cause authentication failures if stronger authentication 2661 mechanisms are introduced in later versions of HTTP. Such 2662 authentication mechanisms &MAY; rely on the values of header fields 2663 not listed here. 2664 </t> 2665 </x:note> 2619 A proxy &MUST-NOT; modify the "path-absolute" and "query" parts of the 2620 received request-target when forwarding it to the next inbound server, 2621 except as noted above to replace an empty path with "/" or "*". 2622 </t> 2623 <t> 2624 A proxy &MUST-NOT; modify header fields that provide information about the 2625 end points of the communication chain, the resource state, or the selected 2626 representation. A proxy &MAY; change the message body through application 2627 or removal of a transfer coding (<xref target="transfer.codings"/>). 2628 </t> 2629 <t> 2630 A non-transforming proxy &MUST; preserve the message payload (&payload;). 2631 A transforming proxy &MUST; preserve the payload of a message that 2632 contains the no-transform cache-control directive. 2633 </t> 2634 <t> 2635 A transforming proxy &MAY; transform the payload of a message 2636 that does not contain the no-transform cache-control directive; 2637 if the payload is transformed, the transforming proxy &MUST; add a 2638 Warning 214 (Transformation applied) header field if one does not 2639 already appear in the message (see &header-warning;). 2640 </t> 2666 2641 </section> 2667 2642 </section>
Note: See TracChangeset
for help on using the changeset viewer.