httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Roy T. Fielding" <field...@gbiv.com>
Subject Re: 2.2 mod_http_proxy and "partial" pages
Date Tue, 06 Dec 2005 20:40:34 GMT
On Dec 6, 2005, at 9:38 AM, Justin Erenkrantz wrote:

> On Tue, Dec 06, 2005 at 12:22:18PM -0500, Brian Akins wrote:
>>> There *might* be a breakage if the server aborted it's half of the
>>> connection partway through the response.  I don't have the time  
>>> to fully
>>> look at the code, but there might be a code path that does so.   
>>> -- justin
>>
>> From what I can tell, stock proxy and cache is vulnerable to that.
>
> After a bit more of thinking, the right thing to do would be to have
> mod_proxy force a dropped connection to the client.  Since the backend
> bailed on us, there's no way for us to finish the response - we've  
> likely
> already guaranteed the headers, but have no way to keep the connection
> 'correct' with respect to the metadata we've already sent.  We must  
> bail.

That would depend on the current state of the proxy's response to
the client, since it may have not even sent the status code on the
wire.  If not, then marking the connection as aborted will just make
it look like the proxy is broken, so we should send a 503 error
message instead.

If the response code has already been sent on the wire, then HTTP
has no way to communicate the break other than body != C-L.
Note, however, that waka does have such a mechanism, so assuming
that the entire chain is broken is incorrect  Instead, send an error
bucket down the chain and have the proxy mark the connection as bad
after sending the last good data packet.

....Roy

Mime
View raw message