title: Problems with HTTP/2 on nginx for Windows?
body: <p>I am using nginx 1.17.10.1 Unicorn build from <a href="http://nginx-win.ecsds.eu/" rel="nofollow noreferrer">http://nginx-win.ecsds.eu/</a> and Apache/2.4.43 build from Apachelounge on Windows Server 2012 R2.</p>
  <p>Nginx serves static files and proxies Apache responses for PHP scripts. Everything was fine until recently.</p>
  <p>Two times in a day without any distinct reason the websites stop responding. Memory/CPU/Network usages are ok. Apache starts logging like</p>
  <p><code>XX.XX.XX.XX 0ms [01/Jul/2020:05:05:20 -0700] &quot;-&quot; 408 - &quot;-&quot; &quot;-&quot;</code></p>
  <p>for each request.
  Nginx log shows</p>
  <p><code>2020/07/01 06:04:54 [error] 11800#12192: *5002230 WSARecv() failed (10053: An established connection was aborted by the software in your host machine) while reading response header from upstream, client: YY.YY.YY.YY, server: example.com, request: &quot;GET /the/url/here HTTP/2.0&quot;, upstream: &quot;http://XX.XX.XX.XX:8181/the/url/here&quot;, host: &quot;example.com&quot;</code></p>
  <p>Server reboot doesn't help. I can connect to the backend directly and it serves the response without any problem.</p>
  <p>The only way I could resolve the problem was to switch HTTP/2 off in nginx configuration.</p>
  <p>So what can cause this behavior?</p>