
Aprenda a configurar e ativar o Nginx para suportar HTTP/2 e habilitar o HSTS, melhorando o desempenho e a segurança do seu site
O HTTP/2 é a versão mais recente do protocolo HTTP, trazendo melhorias significativas de desempenho e eficiência para a web moderna. Neste tutorial, mostraremos como configurar o Nginx para suportar HTTP/2 e habilitar o HTTP Strict Transport Security (HSTS) para maior segurança.
Abra o arquivo de configuração do seu domínio:
sudo nano /etc/nginx/sites-enabled/seu_dominio
Modifique as diretivas listen
para incluir http2
:
listen 443 ssl http2;
listen [::]:443 ssl http2;
Para melhorar a segurança, atualize a lista de cifras SSL:
ssl_ciphers EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
Adicione a seguinte linha ao bloco do servidor para habilitar o HSTS:
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;
Esta configuração:
max-age
para 1 ano (31536000 segundos)includeSubDomains
preload
Verifique a configuração do Nginx:
sudo nginx -t
Se não houver erros, recarregue o Nginx:
sudo systemctl reload nginx
Use o comando curl para verificar se o HTTP/2 está ativo:
curl -I -L --http2 https://seu_dominio
Você deve ver HTTP/2 200
na resposta.
Melhor Desempenho: O HTTP/2 permite múltiplas requisições simultâneas, compressão de cabeçalhos e push de servidor.
Segurança Aprimorada: O HSTS força conexões HTTPS, protegendo contra ataques de downgrade e man-in-the-middle.
Experiência do Usuário Otimizada: Carregamento mais rápido de páginas e maior confiabilidade.
Ao implementar HTTP/2 e HSTS, você melhora significativamente o desempenho e a segurança do seu site.
Pergunta e respostas frequentes sobre o conteúdo.
HTTP/2 é uma versão mais recente do protocolo HTTP que melhora o desempenho da web, permitindo downloads paralelos, compressão de cabeçalhos e transferências binárias mais eficientes.
Os pré-requisitos incluem um servidor com Nginx instalado, um domínio configurado, um certificado SSL/TLS válido e redirecionamento de tráfego HTTP para HTTPS.
Modifique as diretivas 'listen' no arquivo de configuração do domínio para incluir 'http2', como 'listen 443 ssl http2
Remover cifras antigas e inseguras melhora a segurança do servidor e é necessário para a compatibilidade com HTTP/2.
Use o comando 'curl -I -L --http2 https://seu_dominio' ou verifique no Chrome DevTools na coluna 'Protocol' por 'h2'.
HSTS (HTTP Strict Transport Security) força conexões HTTPS, evitando redirecionamentos e protegendo contra ataques de downgrade de protocolo.
Adicione a linha 'add_header Strict-Transport-Security "max-age=15768000
O 'max-age' define por quanto tempo (em segundos) o navegador deve lembrar de usar apenas HTTPS para o site.
Use 'sudo nginx -t' para verificar erros de sintaxe e 'sudo systemctl reload nginx.service' para aplicar as alterações.
Você pode testar a força da sua conexão SSL no site Qualys SSL Lab (https://www.ssllabs.com/ssltest/).
Por razões de segurança, os principais navegadores suportam HTTP/2 apenas em conexões HTTPS.
HTTP/2 permite downloads paralelos, compressão de cabeçalhos e transferências binárias, resultando em carregamentos de página mais rápidos.
Especialista linux, desenvolvedor web full-stack, PHP no sangue, graduando em Direito, pai da Lais e esposo da Simone