Uma página do WordPress raramente é um arquivo só: vem o HTML e depois dezenas de folhas de estilo, scripts, imagens e fontes. No HTTP/1.1, cada conexão trata uma requisição por vez, o que obriga o navegador a abrir várias conexões e a fazer fila. O HTTP/2 e depois o HTTP/3 foram criados para transportar essas muitas trocas pequenas com mais eficiência, sem mudar nada no significado das requisições: métodos, códigos de resposta e cabeçalhos continuam os mesmos.
HTTP/2: a multiplexação
O HTTP/2, hoje descrito pela RFC 9113 (que substitui a RFC 7540), divide as mensagens em frames binários. Cada troca vira um fluxo (stream), e muitos fluxos circulam ao mesmo tempo em uma única conexão: um fluxo lento não impede mais os outros de avançar. Os cabeçalhos, muito repetitivos de uma requisição para outra, são comprimidos pelo HPACK.
A RFC reconhece um limite: o bloqueio de cabeça de fila (head-of-line blocking) do TCP não foi resolvido. Se um pacote se perde, o TCP segura tudo o que vem depois até a retransmissão, e todos os fluxos esperam. Para HTTP/2 sobre TLS, a norma exige TLS 1.2 ou mais recente, e a documentação do Apache lembra que a maioria dos navegadores só fala HTTP/2 com endereços https.

HTTP/3: trocar de transporte
O HTTP/3 (RFC 9114) mantém o mesmo modelo, mas sobre o QUIC (RFC 9000), um protocolo de transporte seguro que trafega em datagramas UDP. O próprio QUIC gerencia os fluxos: eles são independentes, e uma perda só atrasa o fluxo afetado. A criptografia TLS 1.3 faz parte do handshake, o que reduz o número de idas e voltas antes do primeiro byte, e uma conexão pode sobreviver a uma troca de rede, do Wi-Fi para o 4G, por exemplo. A compressão dos cabeçalhos passa a ser o QPACK.
O navegador descobre o HTTP/3 pelo cabeçalho Alt-Svc, enviado em uma primeira conexão em HTTP/2 ou HTTP/1.1: ele indica que o mesmo site também responde em h3, em uma porta UDP. Se um firewall bloquear o UDP, o navegador simplesmente continua no HTTP/2.
No WordPress
- Confira a versão usada na aba Rede das ferramentas de desenvolvedor do navegador (coluna Protocolo: h2 ou h3).
- O mais simples muitas vezes é uma CDN, que fala HTTP/3 com os visitantes qualquer que seja o seu servidor. O LiteSpeed também oferece; no Nginx, o módulo HTTP/3 existe desde a versão 1.25.0 e a documentação ainda o apresenta como experimental.
- No Apache, o HTTP/2 passa pelo mod_http2 e pela diretiva
Protocols h2 http/1.1; a documentação recomenda o MPM event, porque com o prefork uma conexão só trata uma requisição por vez. - Libere a porta UDP 443 no firewall do servidor se você mesmo ativar o HTTP/3.
O efeito no desempenho depende do site, da rede e da quantidade de arquivos; os sinais de desempenho considerados pelo Google são tratados no nosso artigo HTTPS, HSTS e cabeçalhos de segurança.