HTTP/2#

Proporciona soporte para HTTP/2.

Al compilar desde el código fuente, este módulo no se compila por defecto; debe habilitarse con la opción de compilación ‑‑with‑http_v2_module.

En paquetes e imágenes de nuestros repositorios, el módulo está incluido en la compilación.

Ejemplo de Configuración#

server {
    listen 443 ssl;

    http2 on;

    ssl_certificate server.crt;
    ssl_certificate_key server.key;
}

Nota

Tenga en cuenta que aceptar conexiones HTTP/2 sobre TLS requiere soporte para la extensión TLS "Application-Layer Protocol Negotiation" (ALPN), que está disponible desde la versión 1.0.2 de OpenSSL.

Si la directiva ssl_prefer_server_ciphers está configurada con el valor "on", los cifrados deben configurarse para cumplir con la lista negra del RFC 9113, Apéndice A y ser compatibles con los clientes.

Directivas#

http2#

Added in version 1.2.0.

Sintaxis

http2 on | off;

Predeterminado

http2 off;

Contexto

http, server

Habilita el protocolo HTTP/2.

http2_body_preread_size#

Sintaxis

http2_body_preread_size tamaño;

Predeterminado

Contexto

http, server

Establece el tamaño del búfer por cada solicitud en la que se puede guardar el cuerpo de la solicitud antes de que comience a procesarse.

http2_chunk_size#

Sintaxis

http2_chunk_size tamaño;

Predeterminado

http2_chunk_size 8k;

Contexto

http, server, location

Establece el tamaño máximo de los fragmentos en los que se divide el cuerpo de la respuesta. Un valor demasiado bajo resulta en una mayor sobrecarga. Un valor demasiado alto perjudica la priorización debido al bloqueo de cabeza de línea.

http2_max_concurrent_pushes#

Obsoleto desde la versión 1.2.0.

Sintaxis

http2_max_concurrent_pushes número;

Predeterminado

http2_max_concurrent_pushes 10;

Contexto

http, server

Limita el número máximo de solicitudes push concurrentes en una conexión.

http2_max_concurrent_streams#

Sintaxis

http2_max_concurrent_streams número;

Predeterminado

http2_max_concurrent_streams 128;

Contexto

http, server

Establece el número máximo de flujos HTTP/2 concurrentes en una conexión.

http2_push#

Obsoleto desde la versión 1.2.0.

Sintaxis

http2_push uri | off;

Predeterminado

http2_push off;

Contexto

http, server, location

Preemptively sends (push) a request to the specified uri along with the response to the original request. Only relative URIs with absolute path will be processed, for example:

http2_push /static/css/main.css;

The uri value can contain variables.

Several http2_push directives can be specified on the same configuration level. The off parameter cancels the effect of the http2_push directives inherited from the previous configuration level.

http2_push_preload#

Obsoleto desde la versión 1.2.0.

Sintaxis

http2_push_preload on | off;

Predeterminado

http2_push_preload off;

Contexto

http, server, location

Habilita la conversión automática de enlaces preload especificados en los campos de cabecera de respuesta "Link" en solicitudes push.

http2_recv_buffer_size#

Sintaxis

http2_recv_buffer_size tamaño;

Predeterminado

http2_recv_buffer_size 256k;

Contexto

http

Establece el tamaño del búfer de entrada por worker.

Variables Integradas#

El módulo http_v2 admite las siguientes variables integradas:

$http2#

identificador de protocolo negociado:

h2

para HTTP/2 sobre TLS

h2c

para HTTP/2 sobre TCP sin cifrar

""

una cadena vacía en otros casos