On Wed, 2009-12-09 at 00:16 +0100, Matthias Rieber wrote:
> Hello,
> 
> I've a simple test setup. Pound + Apache2. On the webserver runs a script 
> that redirects the request to the very same server to another script. In 
> rare cases the connection (seems) to fail.
> 
> After some investigation it seems that it's easier to duplicate that 
> behaviour on a loaded pound server and a fast client. Running wget in 
> debug/verbose mode:
> 
> ...after the first request...
> --2009-12-09 00:00:39-- 
> http://domain.invalid/script
> Reusing existing connection to domain.invalid:80.
> Reusing fd 3.
> 
> ---request begin---
> GET /script HTTP/1.0
> User-Agent: Wget/1.11.4
> Accept: */*
> Host: domain.invalid
> Connection: Keep-Alive
> 
> ---request end---
> HTTP request sent, awaiting response... No data received.
> Disabling further reuse of socket 3.
> Closed fd 3
> Giving up.
> 
> It seems that it sends the next request just the moment before pound 
> closes the connection. When I put some load on the client, the requests 
> won't fail, because the connections are closed before wget sends the next 
> request.
> 
> Disabling KeepAlive on Apache2 seems to solve this problem.
> 
> Is that a known issue? Is keepalive not recommended on backend servers?
> 
> kind regards,
> 
> Matthias

Your script tries to reuse a socket, even though the protocol is
HTTP/1.0. This is not allowed, as per the RFC.
-- 
Robert Segall
Apsis GmbH
Postfach, Uetikon am See, CH-8707
Tel: +41-44-920 4904


--
To unsubscribe send an email with subject unsubscribe to [email protected].
Please contact [email protected] for questions.

Reply via email to