Return-Path: Delivered-To: apmail-httpd-cvs-archive@www.apache.org Received: (qmail 34289 invoked from network); 29 Dec 2010 03:34:02 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 29 Dec 2010 03:34:02 -0000 Received: (qmail 52698 invoked by uid 500); 29 Dec 2010 03:34:02 -0000 Delivered-To: apmail-httpd-cvs-archive@httpd.apache.org Received: (qmail 52649 invoked by uid 500); 29 Dec 2010 03:34:02 -0000 Mailing-List: contact cvs-help@httpd.apache.org; run by ezmlm Precedence: bulk Reply-To: dev@httpd.apache.org list-help: list-unsubscribe: List-Post: List-Id: Delivered-To: mailing list cvs@httpd.apache.org Received: (qmail 52642 invoked by uid 99); 29 Dec 2010 03:34:02 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 29 Dec 2010 03:34:02 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 29 Dec 2010 03:34:00 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id DEAA82388994; Wed, 29 Dec 2010 03:33:38 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1053524 - /httpd/httpd/branches/2.2.x/docs/manual/mod/mod_headers.xml Date: Wed, 29 Dec 2010 03:33:38 -0000 To: cvs@httpd.apache.org From: covener@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20101229033338.DEAA82388994@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: covener Date: Wed Dec 29 03:33:38 2010 New Revision: 1053524 URL: http://svn.apache.org/viewvc?rev=1053524&view=rev Log: Merge r1053523 from trunk: PR50525: Header always ... doesn't really mean "always" in terms of what you can edit/merge/append/set since it only looks at r->err_headers_out and the initial value may have lived in r->headers_out. Modified: httpd/httpd/branches/2.2.x/docs/manual/mod/mod_headers.xml Modified: httpd/httpd/branches/2.2.x/docs/manual/mod/mod_headers.xml URL: http://svn.apache.org/viewvc/httpd/httpd/branches/2.2.x/docs/manual/mod/mod_headers.xml?rev=1053524&r1=1053523&r2=1053524&view=diff ============================================================================== --- httpd/httpd/branches/2.2.x/docs/manual/mod/mod_headers.xml (original) +++ httpd/httpd/branches/2.2.x/docs/manual/mod/mod_headers.xml Wed Dec 29 03:33:38 2010 @@ -298,18 +298,32 @@ headers and output filters are run, allowing outgoing headers to be modified.

-

By default, this directive only affects successful responses (responses - in the 2xx range). The optional condition - can be either onsuccess (default) or always (all - status codes, including successful responses). A value of always - may be needed to influence headers set by some internal modules even for - successful responses, and is always needed to affect non-2xx - responses such as redirects or client errors.

- - CGI -

To manipulate headers set by CGI scripts, it is necessary to specify - always for the first parameter.

-
+

The optional condition argument determines which internal + table of responses headers this directive will operate against. Other + components of the server may have stored their response headers in either + the table that corresponds to onsuccess or the table that + corresponds to always. "Always" in this context refers to + whether headers you add will be sent during both a successful and unsucessful + response, but if your action is a function of an existing header, you + will have to read on for further complications.

+ +

The default value of onsuccess may need to be changed to + always under the circumstances similar to those listed below + Note also that repeating this directive with both conditions makes sense in + some scenarios because always is not a superset of + onsuccess with respect to existing headers:

+ +
    +
  • You're adding a header to a non-success (non-2xx) response, such + as a redirect, in which case only the table corresponding to + always is used in the ultimate response.
  • +
  • You're modifying or removing a header generated by a CGI script, + in which case the CGI scripts are in the table corresponding to + always and not in the default table.
  • +
  • You're modifying or removing a header generated by some piece of + the server but that header is not being found by the default + onsuccess condition.
  • +

The action it performs is determined by the first argument (second argument if a condition is specified).