You can avoid global timeouts or have virtual hosts by specifying proxy server timeouts in the ProxyPass directive as follows:
ProxyPass /svc http://example.com/svc timeout=600 ProxyPassReverse /svc http://example.com/svc timeout=600
Pay attention to timeout=600 seconds.
However, this does not always work when you have load balancing. In this case, you should add timeouts in both places (verified in Apache 2.2.31)
Example of load balancing:
<Proxy "balancer://mycluster"> BalancerMember "http://member1:8080/svc" timeout=600 BalancerMember "http://member2:8080/svc" timeout=600 </Proxy> ProxyPass /svc "balancer://mycluster" timeout=600 ProxyPassReverse /svc "balancer://mycluster" timeout=600
Note: timeout=600 on ProxyPass not required when Chrome was a client (I don’t know why), but without this timeout on ProxyPass Internet Explorer (11) interrupts the use of the reset connection by the server.
My theory is this:
ProxyPass timeout is used between the client (browser) and Apache.
BalancerMember timeout is used between Apache and the backend.
For those using Tomcat or other support, you can also pay attention to the HTTP connector timeouts.
bhantol Nov 04 '16 at 2:53 on 2016-11-04 14:53
source share