From 68754d660ab1bcac8ec9f22e120bec8c37d56a54 Mon Sep 17 00:00:00 2001
From: Eric Covener
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.
+ table of responses headers this directive will operate against. Despite the
+ name, the default value of onsuccess
does not limit
+ an action to responses with a 2xx status code. Headers set under
+ this condition are still used when, for example, a request is successfully
+ proxied or generated by CGI, even when they have generated a failing status code.
When your action is a function of an existing header, you may need to specify
+ a condition of always
, depending on which internal table the
+ original header was set in. The table that corresponds to always
is
+ used for locally generated error responses as well as successful responses.
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:
always
is used in the ultimate response.onsuccess
condition.It is not currently possible to limit an action to a range of HTTP + status codes, if the responses are successfully handled by e.g. CGI or + proxy modules.
+The action it performs is determined by the first argument (second argument if a condition is specified). This can be one of the following values:
-- 2.50.1