I'm using nginx as a reverse proxy, configured to use HTTP 1.1 so as to support range requests. The server responds to some of the requests with a "100 Continue", even if there was no "Expect: 100-continue" in the request. The server then proceeds to read the rest of the request and, eventually, sends the "200 OK" reponse.
In my testing, in this scenario Nginx will forward the 100 Continue to the requesting browser, but the 200 OK response never makes it. It seems to be silently dropped. The result is that the browser is stuck waiting for a response until the request times out.
Is this expected behaviour? From my reading of the HTTP 1/1 spec, this server is not in violation of the spec. I'm using v1.4.2 on Windows.