Reputation: 20654
I have installed SPDY Indicator chrome extension. It is detecting some sites as SPDY enabled and some as HTTP/2 enabled.
Which are the web servers that currently support HTTP/2? I know nginx support SPDY, but does it support HTTP/2? If it does, how can I enable it?
Thanks to GolezTrol. The answer is no. Yes as of September 2015
The following list is out of date and it's probably not worth maintaining.
Upvotes: 13
Views: 20401
Reputation: 13040
nginx released 1.9.5 mainline version last week. You have to compile nginx with --with-http_v2_module
to enable HTTP/2 support. It does not support server push yet.
I wrote a simple post on how to set it up for local development on OS X with HTTP/2 in case it's of any interest for others: http://tech.finn.no/2015/09/25/setup-nginx-with-http2-for-local-development/
Upvotes: 1
Reputation: 61391
Please find table below
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| Name | Language | Role(s) | Negotiation(s) | Protocol id(s) |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| http4s-blaze | Scala | server | ALPN | h2, h2-14 |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| cl-http2-protocol | Common Lisp | client, server | NPN, direct | h2-14 |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| Deuterium | C | client, server | ALPN, direct | h2, h2-14, h2c, h2c-14 |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| F5 | C | server, proxy | ALPN, NPN | h2-14 (11.6.0 HF2) h2 (upcoming release) |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| H2O | C | Server, proxy | ALPN, NPN, Upgrade, direct | h2, h2-14, h2-16 |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| http-2 | Ruby | server, client | ALPN, NPN, Upgrade, direct | h2, h2c, h2-17 |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| http2 | Go | client, server | NPN (+ ALPN w/ Go 1.4) | |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| Jetty | Java | client, intermediary, server | ALPN, Upgrade, Direct | h2, h2-17, h2-14, h2c, h2c-17 |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| LiteSpeed Enterprise | C++ | Server | ALPN, NPN, Upgrade | h2, h2-17, h2-14, h2c |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| Lucid | Erlang | Server | NPN, direct | h2, h2-16, h2-14 |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| Microsoft | C/C++ | Client, Server | ALPN | h2 |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| mod_h2 | C | Server | ALPN, NPN, Upgrade, direct | h2, h2c (plus -14,-16) |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| Netty | Java | client, server | ALPN, NPN, Upgrade, direct | h2, h2c |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| nghttp2 | C | client, server, intermediary | ALPN, NPN, Upgrade, direct | h2, h2-16, h2-14, h2c |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| node-http2 | NodeJS | server, client | ALPN, NPN, direct | h2 |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| OkHttp | Android, Java | mock server, client | ALPN, NPN | h2 |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| OpenLiteSpeed | C++ | Server | ALPN, NPN, Upgrade | h2, h2-17 , h2-14, h2c |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| Protocol::HTTP2 | Perl | server, client | ALPN, NPN, Upgrade, direct | h2, h2c |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| Brocade SteelApp Traffic Manager (formerly Riverbed/Zeus TM) | C++ | Server | ALPN, NPN, Upgrade, direct | h2, h2c |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| Sasazka | NodeJS | server | NPN | |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| second-transfer | Haskell | server | ALPN | h2-14, h2 |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| Trusterd | C/mruby | client, server | ALPN, NPN, direct | |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| Twitter | C++ | server, client | ALPN, NPN | h2 |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| Undertow | Java | Server, Intermediary | ALPN, Upgrade | |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
| Warp | Haskell | Server | ALPN, direct | |
+--------------------------------------------------------------+----------------+------------------------------+----------------------------+------------------------------------------+
Links to products since I don't know how to keep table format with links inside.
Upvotes: 6
Reputation: 1450
There's a full list of web servers etc that support HTTP/2 at https://github.com/http2/http2-spec/wiki/Implementations
HTH
Upvotes: 26