From: Jim Jagielski Date: Sat, 20 Sep 2008 13:44:26 +0000 (+0000) Subject: For timeouts, behave as before and not drop. X-Git-Tag: 2.3.0~290 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=14bb7079df8db0f63ba4f26d569b728155c3108b;p=apache For timeouts, behave as before and not drop. From Adam Woodworth git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@697362 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/modules/proxy/mod_proxy_http.c b/modules/proxy/mod_proxy_http.c index 856be141d4..74862637f1 100644 --- a/modules/proxy/mod_proxy_http.c +++ b/modules/proxy/mod_proxy_http.c @@ -1372,6 +1372,10 @@ apr_status_t ap_proxy_http_process_response(apr_pool_t * p, request_rec *r, ap_log_rerror(APLOG_MARK, APLOG_ERR, rc, r, "proxy: error reading status line from remote " "server %s", backend->hostname); + if (rc == APR_TIMEUP) { + ap_log_rerror(APLOG_MARK, APLOG_DEBUG, 0, r, + "proxy: read timeout"); + } /* * If we are a reverse proxy request shutdown the connection * WITHOUT ANY response to trigger a retry by the client @@ -1379,9 +1383,12 @@ apr_status_t ap_proxy_http_process_response(apr_pool_t * p, request_rec *r, * BUT currently we should not do this if the request is the * first request on a keepalive connection as browsers like * seamonkey only display an empty page in this case and do - * not do a retry. + * not do a retry. We should also not do this on a + * connection which times out; instead handle as + * we normally would handle timeouts */ - if (r->proxyreq == PROXYREQ_REVERSE && c->keepalives) { + if (r->proxyreq == PROXYREQ_REVERSE && c->keepalives && + rc != APR_TIMEUP) { apr_bucket *eos; ap_log_rerror(APLOG_MARK, APLOG_DEBUG, 0, r,