2

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.

1 Answers1

2

As of 2017:

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

In my opinion, there is no 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

As of 2018:

nginx does support HTTP/2 server push for upstream connections since version 1.13.9.

As of 2020:

Google Chrome has removed HTTP/2 server push support from Chrome 106.