mod_proxy_http: Make the proxy-interim-response environment variable
effective by formally overriding origin server behaviour.
Submitted by: minfrin
Reviewed/backported by: jim
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@
1502198 13f79535-47bb-0310-9956-
ffa450edef68
URI that is not configured for DAV will trigger a segfault. [Ben Reser
<ben reser.org>]
+ *) mod_proxy_http: Make the proxy-interim-response environment variable
+ effective by formally overriding origin server behaviour. [Graham
+ Leggett, Co-Advisor <coad measurement-factory.com>]
*) mod_proxy: Fix seg-faults when using the global pool on threaded
MPMs [Thomas Eckert <thomas.r.w.eckert gmail.com>, Graham Leggett,
2.4.x patch: http://people.apache.org/~minfrin/httpd-mod_auth_basic-fake4.patch
+1: minfrin, jim, druggeri
- * mod_proxy_http: Make the proxy-interim-response environment variable
- effective by formally overriding origin server behaviour.
- trunk patch: http://svn.apache.org/r1483027
- 2.4.x patch: trunk works
- +1: minfrin, jim, druggeri
-
* mod_proxy: Connection header clearing issues
trunk patch: https://svn.apache.org/viewvc?view=revision&revision=1481891
https://svn.apache.org/viewvc?view=revision&revision=1482075
* behaviour here might break something.
*
* So let's make it configurable.
+ *
+ * We need to set "r->expecting_100 = 1" otherwise origin
+ * server behaviour will apply.
*/
const char *policy = apr_table_get(r->subprocess_env,
"proxy-interim-response");
ap_log_rerror(APLOG_MARK, APLOG_TRACE2, 0, r,
"HTTP: received interim %d response", r->status);
- if (!policy || !strcasecmp(policy, "RFC")) {
+ if (!policy
+ || (!strcasecmp(policy, "RFC") && ((r->expecting_100 = 1)))) {
ap_send_interim_response(r, 1);
}
/* FIXME: refine this to be able to specify per-response-status