Você deve ter uma versão Nginx compilada com uma versão do OpenSSL que inclua o protocolo ALPN. (NPN ainda funcionará para o Firefox).
Você pode verificar a versão do OpenSSL compilada com o seu nginx com o comando nginx -V
. Você precisará do OpenSSL 1.0.2d pelo menos para ser compatível com o HTTP / 2.
Se a sua versão do OpenSSL for boa, você também pode verificar o sinalizador --with-http_v2_module
no resultado de nginx -V
.
Caso você não esteja de acordo com estes pré-requisitos, você terá que recompilar o nginx sozinho ou usar um binário pré-construído para ser compatível com o HTTP / 2.
Sobre a porta 443: A maioria dos navegadores (e a própria implementação do nginx) não suportam a porta 80 para HTTP / 2, na verdade.