1

I have an Express web server behind Nginx reverse proxy.
The Nginx is configured for HTTP/2.

Is it better to leave the default http1 connection between Nginx and Express, or is there worth in upgrading Express to HTTP/2 also?

I guess there'll be some performance loss since SSL is required on both, but don't know whether multiplexing (and other improvements) will make up for it.

steakoverflow
  • 153
  • 1
  • 5
  • Do you even need https on your backend connections?! – Michael Hampton Dec 01 '17 at 18:03
  • It's not a requirement, I'm just thinking in terms of performance, I guessed that HTTP2 should be faster even in this backend combo. – steakoverflow Dec 01 '17 at 18:22
  • So are your backends hosted in some other datacenter than your frontends? There's little other reason to bother with TLS here. – Michael Hampton Dec 01 '17 at 19:29
  • 1
    Possible duplicate of [Use HTTP/2.0 between nginx reverse-proxy and backend webserver](https://serverfault.com/questions/765258/use-http-2-0-between-nginx-reverse-proxy-and-backend-webserver) – Jacob Evans Dec 01 '17 at 22:18

1 Answers1

0

Nginx does not support HTTP/2 for proxy_pass connections so this is not an option.

In my opinion, there is not huge reason to have HTTP/2 all the way through, in a similar way that HTTPS is not required all the way through.

For more details see the answers to this identical question on StackOverflow: https://stackoverflow.com/questions/41637076/http2-with-node-js-behind-nginx-proxy

Barry Pollard
  • 4,461
  • 14
  • 26