https://bz.apache.org/bugzilla/show_bug.cgi?id=59869
--- Comment #1 from Ruediger Pluem <[email protected]> --- Created attachment 34050 --> https://bz.apache.org/bugzilla/attachment.cgi?id=34050&action=edit Patch against trunk Does the attached patch against trunk (applies to 2.4.x with offset) fix your problem? Index: modules/proxy/mod_proxy.c =================================================================== --- modules/proxy/mod_proxy.c (revision 1753164) +++ modules/proxy/mod_proxy.c (working copy) @@ -1273,17 +1273,25 @@ * the error page on the proxy or if the error was not generated by the * backend itself but by the proxy e.g. a bad gateway) in order to give * ap_proxy_post_request a chance to act correctly on the status code. + * But only do the above if access_status is not OK or DONE, because + * in this case r->status might contain the true status and overwriting + * it with OK or DONE would be wrong. */ - saved_status = r->status; - r->status = access_status; - ap_proxy_post_request(worker, balancer, r, conf); - /* - * Only restore r->status if it has not been changed by - * ap_proxy_post_request as we assume that this change was intentional. - */ - if (r->status == access_status) { - r->status = saved_status; + if ((access_status != OK) || (access_status != DONE)) { + saved_status = r->status; + r->status = access_status; + ap_proxy_post_request(worker, balancer, r, conf); + /* + * Only restore r->status if it has not been changed by + * ap_proxy_post_request as we assume that this change was intentional. + */ + if (r->status == access_status) { + r->status = saved_status; + } } + else { + ap_proxy_post_request(worker, balancer, r, conf); + } proxy_run_request_status(&access_status, r); AP_PROXY_RUN_FINISHED(r, attempts, access_status); -- You are receiving this mail because: You are the assignee for the bug. --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
