On Thu, Jun 20, 2013 at 11:23 PM, Philip Martin <philip.mar...@wandisco.com> wrote: > Ivan Zhakov <i...@visualsvn.com> writes: > >> As breser pointed on IRC all HTTP/1.1 applications MUST support >> chunked transfer encoding. From RFC2616: >> [[[ >> All HTTP/1.1 applications MUST be able to receive and decode the >> "chunked" transfer-coding, and MUST ignore chunk-extension extensions >> they do not understand. >> ]]] >> >> And server is application: >> [[[ >> server >> An application program that accepts connections in order to service >> requests by sending back responses. >> ]]] > > On the other hand the RFC also says: > > http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.12 > > 10.4.12 411 Length Required > > The server refuses to accept the request without a defined > Content-Length. The client MAY repeat the request if it adds a valid > Content-Length header field containing the length of the message-body in > the request message. > > I assume the server can send this error since it is in the RFC. The > client can only retry with a Content-Length request, not a chunked > request. So it appears that the only chunked support a server needs is > to be able to reply 411. > Should be fixed by r1495419 [1]: [[[[ Rework server chunked transfer encoding support detection in ra_serf. Use HTTP/1.1 chunked transfer encoding for first OPTIONS request and then fallback to HTTP/1.0 requests if HTTP 411 status code or HTTP/1.0 response received. ]]]
I've tested my fix with all publicly available servers like unfuddle.com and xp-dev.com [1] http://svn.apache.org/r1495419 -- Ivan Zhakov CTO | VisualSVN | http://www.visualsvn.com