title: Lighttpd reverse proxy converts HTTP/1.1 requests to 1.0
body: <p>I'm using lighttpd as a reverse proxy for a group of Play instances, which are on version 2.1.1 at the moment. The Play applications use chunked transfer encoding to do COMet (server push). Lighttpd version is 1.4.28 (latest supported version for Ubuntu 12.04).</p>
  
  <p>This setup is working nicely, but now I'm upgrading to Play Framework 2.2.1. The play framework now enforces that chunked responses must be in response to a HTTP/1.0 request (see <a href="https://github.com/playframework/playframework/commit/5131c46626b82f966a9b7894cf9bfcdc1b464f3e" rel="nofollow">https://github.com/playframework/playframework/commit/5131c46626b82f966a9b7894cf9bfcdc1b464f3e</a>), and it turns out that my lighttpd proxy is converting HTTP/1.1 requests to HTTP/1.0. The exact response from Play is a 505, with the  message "<code>The response to this request is chunked and hence requires HTTP 1.1 to be sent, but this is a HTTP 1.0 request.</code>".</p>
  
  <p>So where next? I don't know which of my alternatives (get the latest version of lighttpd, switch to nginx) is likely to work.</p>
  
  <p>UPDATE: lighttpd doesn't look promising, as mod_proxy.c has HTTP/1.0 hardcoded, even though it does handle chunked encoding.</p>