> -----Ursprüngliche Nachricht----- > Von: Pavel Stano > Gesendet: Freitag, 7. Dezember 2007 02:48 > An: dev@httpd.apache.org > Betreff: Re: apache 2.2 mod_proxy_http disable buffering > > > Ruediger Pluem wrote: > > > > You are correct. This is only fixed in trunk so far. You > are affected by > > PR41056 (https://issues.apache.org/bugzilla/show_bug.cgi?id=41056). > > I just proposed the patch from trunk for backport. Please find the > > patch attached for your convenience. > > > > thanks for patch, it works, but it looks that it create > another problem, > do not backport it yet to 2.2.x > > proxy (2.2.6 with this patch) sometimes dont send data to client, just > headers from backend, data are lost (blank page in browser) > it took me some time to reproduce it at 100% > it happend when proxy read headers in first read() and data in second > and others read()
Do you have any kind of cgi script, php script, jsp that can reproduce this behaviour? > > problem does not happend when proxy in first read() read headers WITH > some data, in my case it is 99% of all time > > here is strace output from proxy when happend that problem > > ... proxy send request to backend > 11902 writev(14, [{"GET /~stanojr/tmp/p/ HTTP/1.1\r\n", 31}, {"Host: > xxx.xx\r\n", 21}, {"X-Forwarded-For: 1.2.3.4, 1.2.3.4\r\n", 47}, > {"Max-Forwards: 10\r\n", 18}, {"X-Forwarded-Host: xxx.xx\r\n", 33}, > {"X-Forwarded-Server: xxx.xx\r\n", 35}, {"Connection: Keep-Alive\r\n", > 24}, {"\r\n", 2}], 8) = 211 > 11902 read(14, 0x7576c8, 8000) = -1 EAGAIN (Resource > temporarily unavailable) > 11902 poll([{fd=14, events=POLLIN, revents=POLLIN}], 1, 600000) = 1 > > ... proxy read headers from backend (no data) > 11902 read(14, "HTTP/1.1 200 OK\r\nDate: Fri, 07 Dec 2007 01:35:42 > GMT\r\nServer: Apache\r\nVary: User-Agent\r\nConnection: > close\r\nTransfer-Encoding: chunked\r\nContent-Type: > text/html\r\n\r\n", > 8000) = 162 > 11902 read(14, 0x7576c8, 8000) = -1 EAGAIN (Resource > temporarily unavailable) > > ... proxy send headers to client > 11902 writev(11, [{"HTTP/1.1 200 OK\r\nDate: Fri, 07 Dec 2007 01:35:42 > GMT\r\nServer: Apache\r\nVary: User-Agent\r\nContent-Type: > text/html\r\nConnection: close\r\n\r\n", 134}], 1) = 134 Hm, we neither sent a Transfer-Encoding nor a valid Content-Length. This is no valid HTTP/1.1 response. Regards Rüdiger