Apache Proxy TimeOut

You increase the timeout in the ProxyPass directive:

ProxyPass /boom/ga https://super-load1-ga.test.com connectiontimeout=300 timeout=300

Timeout values are in seconds.


It sounds like your server at https://super-load1-ga.example.com is taking too long to respond.

In that scenario, if it just sits there then the Apache process is going to wait for it. That process is essentially blocked, i.e. cannot do anything else. If you don't time out quick enough, you're going to run out of Apache processes and hit MaxClients which seems to all make sense.

You should have logs on the super-load1-ga.test.com site to see how long requests are taking, they must be taking an age.

You could potentially shorten the timeout on the ProxyPass connection

http://httpd.apache.org/docs/current/mod/mod_proxy.html#workers


To answer your question, yes, Apache2 httpd in proxy mode does log that error message when Apache2 httpd times out. If the server connected to the Apache2 httpd in proxy mode was the cause there would be a different message.

The message has multiple parts: The timeout specified has expired is the text equivalent of the APR_TIMEUP error code, see:

srclib/apr/misc/unix/errorcodes.c

case APR_TIMEUP:
    return "The timeout specified has expired";

Then proxy: error reading status line from remote server super-load1-ga.test.com is in

modules/proxy/mod_proxy_http.c

If you crank up your log level to APLOG_DEBUG you should see an additional message: proxy: read timeout too.