Chunked transfer encoding problem

Piotr Bartosiewicz piotr.bartosiewicz at firma.gg.pl
Wed Nov 14 16:42:49 UTC 2012


Hi,

My nginx (1.2.4) config looks like this (relevant part):

server {
   listen 8888;

   location / {
     proxy_http_version 1.1;
     proxy_pass http://localhost:8080;
   }
}

Backend server handles GET requests and responds with a large body.
Response is generated and sent on the fly, so content-length is not 
known at the beginning.
In normal case everything works fine.

But sometimes server catches an exception after a response headers were 
sent.
I've found that there is a commonly used solution to inform a client 
about incomplite response:
use Transfer-Encoding chunked and close socket without sending the last 
(0 length) chunk.
Unfortunately nginx appends termination chunk even when the backend 
server does not
(both nginx and backed connections are http/1.1 and use chunked encoding).

Is this expected behavior, bug or maybe there is some option to turn 
this off?

Regards
Piotr Bartosiewicz



More information about the nginx mailing list