summaryrefslogtreecommitdiff
path: root/docs/manual/mod/mod_headers.html.en
diff options
context:
space:
mode:
Diffstat (limited to 'docs/manual/mod/mod_headers.html.en')
-rw-r--r--docs/manual/mod/mod_headers.html.en40
1 files changed, 27 insertions, 13 deletions
diff --git a/docs/manual/mod/mod_headers.html.en b/docs/manual/mod/mod_headers.html.en
index a2b068af..02db5483 100644
--- a/docs/manual/mod/mod_headers.html.en
+++ b/docs/manual/mod/mod_headers.html.en
@@ -214,18 +214,32 @@ headers</td></tr>
and output filters are run, allowing outgoing headers to be
modified.</p>
- <p>By default, this directive only affects successful responses (responses
- in the <code>2<var>xx</var></code> range). The optional <var>condition</var>
- can be either <code>onsuccess</code> (default) or <code>always</code> (all
- status codes, including successful responses). A value of <code>always</code>
- may be needed to influence headers set by some internal modules even for
- successful responses, and is always needed to affect non-<code>2<var>xx</var></code>
- responses such as redirects or client errors.</p>
-
- <div class="note"><h3>CGI</h3>
- <p>To manipulate headers set by CGI scripts, it is necessary to specify
- <code>always</code> for the first parameter.</p>
- </div>
+ <p> The optional <var>condition</var> 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 <code>onsuccess</code> or the table that
+ corresponds to <code>always</code>. "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.</p>
+
+ <p> The default value of <code>onsuccess</code> may need to be changed to
+ <code>always</code> under the circumstances similar to those listed below.
+ Note also that repeating this directive with both conditions makes sense in
+ some scenarios because <code>always</code> is not a superset of
+ <code>onsuccess</code> with respect to existing headers:</p>
+
+ <ul>
+ <li> You're adding a header to a non-success (non-2xx) response, such
+ as a redirect, in which case only the table corresponding to
+ <code>always</code> is used in the ultimate response.</li>
+ <li> You're modifying or removing a header generated by a CGI script,
+ in which case the CGI scripts are in the table corresponding to
+ <code>always</code> and not in the default table.</li>
+ <li> You're modifying or removing a header generated by some piece of
+ the server but that header is not being found by the default
+ <code>onsuccess</code> condition.</li>
+ </ul>
<p>The action it performs is determined by the first
argument (second argument if a <var>condition</var> is specified).
@@ -451,6 +465,6 @@ headers</td></tr>
<a href="../ja/mod/mod_headers.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
<a href="../ko/mod/mod_headers.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a></p>
</div><div id="footer">
-<p class="apache">Copyright 2009 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
+<p class="apache">Copyright 2011 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p></div>
</body></html> \ No newline at end of file