Guia de configuração de compactação do CloudFront
Gere a configuração de comportamento do CloudFront para compactação Brotli e GZIP com cabeçalhos Cache-Control corretos - sem necessidade de inscrição. O guia de configuração de compactação do Cloudfront produz políticas de cache completas, políticas de cabeçalhos de resposta e configurações de distribuição nas etapas do console, no formato Terraform, CloudFormation, AWS CDK ou AWS CLI. Suporta S3, ALB, API Gateway, EC2 e origens personalizadas. Avisos em tempo real sobre chaves de cache Accept-Encoding ausentes, cabeçalhos Vary ausentes e problemas de Brotli sobre HTTP. Toda a geração é executada no seu navegador.
CloudFront Compression Config Guide
Origin Type
Output Format
Console Steps - CloudFront Compression Config
# AWS CloudFront Console - Step-by-Step Configuration ## Step 1: Create or Edit CloudFront Distribution 1. Open AWS Console → CloudFront → Distributions 2. Click "Create distribution" or select an existing one → Edit ## Step 2: Configure Origin - Origin domain: YOUR-BUCKET.s3.YOUR-REGION.amazonaws.com - Origin access: Origin access control settings (recommended) - Create new OAC → Sign requests → Save ## Step 3: Configure Default Cache Behavior - Viewer protocol policy: Redirect HTTP to HTTPS - Allowed HTTP methods: GET, HEAD - Compress objects automatically: Yes ← REQUIRED for compression ## Step 4: Create Cache Policy 1. CloudFront → Policies → Cache → Create cache policy - Name: CompressionCachePolicy - Default TTL: 86400 seconds (1d) - Maximum TTL: 31536000 seconds (52w) - Minimum TTL: 0 seconds - Cache key settings: ✓ Enable Accept-Encoding for Gzip: Yes ✓ Enable Accept-Encoding for Brotli: Yes Headers: None Cookies: None Query strings: None (or as needed) ## Step 5: Create Response Headers Policy 1. CloudFront → Policies → Response headers → Create response headers policy - Name: CompressionResponseHeaders - Custom headers: Header: Vary Value: Accept-Encoding Override: No - Security headers: Enable recommended security headers ## Step 6: Attach Policies to Behavior - Cache policy: CompressionCachePolicy (created above) - Response headers policy: CompressionResponseHeaders (created above) - Origin request policy: CORS-S3Origin (for S3) or None ## Step 7: Deploy and Verify - Click "Save changes" → Wait for distribution to deploy (Status: Deployed) - Test: curl -H "Accept-Encoding: gzip" -I https://YOUR-CLOUDFRONT-DOMAIN/app.js - Expected: Content-Encoding: gzip, X-Cache: Hit from cloudfront (2nd request)
Verification Commands
Verify GZIP
curl -H "Accept-Encoding: gzip" -I https://YOUR-CF-DOMAIN/app.js # Expected: Content-Encoding: gzip
Verify Brotli
curl -H "Accept-Encoding: br" -I https://YOUR-CF-DOMAIN/app.js # Expected: Content-Encoding: br
Check cache hit
curl -H "Accept-Encoding: gzip" -I https://YOUR-CF-DOMAIN/app.js # 2nd request: X-Cache: Hit from cloudfront
Por que usar nosso guia de configuração de compactação do CloudFront?
- Geração instantânea de configuração de compactação do CloudFront: gere a configuração completa de compactação do CloudFront instantaneamente - o guia de configuração de compactação do Cloudfront produz etapas do console, comandos Terraform, CloudFormation, CDK e AWS CLI com políticas de cache, políticas de cabeçalhos de resposta e configurações Brotli/GZIP corretas.
- Guia on-line de configuração de compactação segura do CloudFront: toda a geração de configuração é executada inteiramente em seu navegador. O guia de configuração de compactação do Cloudfront nunca envia suas configurações para nenhum servidor - seguro para gerar configurações para distribuições privadas, APIs internas e configurações proprietárias do CloudFront.
- 5 formatos IaC + avisos de configuração incorreta em tempo real: gere a configuração de compactação do CloudFront nas etapas do console, no formato Terraform, CloudFormation, AWS CDK ou AWS CLI - tudo a partir das mesmas opções. O guia de configuração de compactação do Cloudfront mostra avisos em tempo real sobre chaves de cache Accept-Encoding ausentes, cabeçalhos Vary ausentes e problemas de Brotli sobre HTTP.
- 100% gratuito para sempre: o guia de configuração de compactação do Cloudfront é totalmente gratuito, sem inscrição, sem nível premium, sem limites e sem anúncios. Gere configurações de compactação do CloudFront para distribuições ilimitadas a custo zero, para sempre.
Guia de configuração de casos de uso comuns para compactação do CloudFront
- Configuração de compactação de site estático S3: configure o CloudFront para servir ativos estáticos compactados GZIP e Brotli de um bucket S3 - o guia de configuração de compactação do Cloudfront gera a política de cache correta com Accept-Encoding na chave de cache, garantindo que o CloudFront armazene em cache variantes separadas para cada codificação.
- Compactação de resposta do API Gateway: habilite a compactação do CloudFront para origens do API Gateway - o guia de configuração de compactação do Cloudfront gera a configuração de comportamento correta com Brotli e GZIP habilitados, configurações TTL corretas para respostas de API e cabeçalhos de resposta Vary: Accept-Encoding.
- Ativação da compactação Brotli: habilite a compactação Brotli em distribuições do CloudFront que atualmente usam apenas GZIP - o guia de configuração de compactação do Cloudfront mostra as configurações exatas da política de cache necessárias para adicionar suporte ao Brotli sem interromper o comportamento de cache GZIP existente.
- Migração de infraestrutura como código: gere código Terraform, CloudFormation ou CDK para configuração de compactação do CloudFront - o guia de configuração de compactação do Cloudfront produz código IaC pronto para produção que pode ser adicionado diretamente ao seu repositório de infraestrutura existente.
- Otimização de políticas de cache: configure políticas de cache do CloudFront com valores de TTL corretos para diferentes tipos de ativos. O guia de configuração de compactação do Cloudfront ajuda a definir TTL padrão, TTL máximo e TTL mínimo corretamente para ativos estáticos, páginas HTML e respostas de API.
- Auditoria de distribuição do CloudFront: audite uma distribuição existente do CloudFront em busca de configurações incorretas de compactação - o guia de configuração de compactação do Cloudfront mostra as configurações corretas e gera comandos curl de verificação para confirmar que GZIP e Brotli estão funcionando corretamente.
O que é a configuração de compactação do CloudFront?
O AWS CloudFront pode compactar respostas HTTP usando GZIP e Brotli antes de entregá-las aos clientes, reduzindo o tamanho da transferência em 60-85% para ativos baseados em texto (HTML, CSS, JavaScript, JSON). A configuração correta de compactação do CloudFront requer três componentes trabalhando juntos: (1) Compactar objetos ativados automaticamente no comportamento do cache, (2) uma política de cache que inclua Accept-Encoding na chave de cache para que o CloudFront armazene variantes compactadas separadas e (3) uma política de cabeçalhos de resposta que adicione Vary: Accept-Encoding para que os caches downstream lidem com as variantes de codificação corretamente. Nosso guia de configuração de compactação do Cloudfront gera todos os três componentes no formato IaC escolhido.
Como funciona nosso guia de configuração de compactação do CloudFront
- 1 Selecione seu tipo de origem e configurações de compactação: Escolha sua origem (S3, ALB, API Gateway, EC2 ou personalizado), habilite GZIP e/ou Brotli, configure valores TTL e alterne Vary header e aplicação de HTTPS. O guia de configuração de compactação do Cloudfront atualiza a configuração gerada instantaneamente e mostra avisos para configurações incorretas.
- 2 Escolha o formato de saída: selecione Etapas do console para configuração manual, Terraform para IaC, CloudFormation para IaC nativo da AWS, CDK para código de infraestrutura TypeScript ou AWS CLI para implantação de linha de comando. Todos os formatos geram configuração completa e pronta para produção. Suas configurações nunca saem do seu navegador.
- 3 Copie e implante: copie a configuração gerada com um clique e aplique-a à sua distribuição do CloudFront. Use os comandos curl de verificação integrados para confirmar que GZIP e Brotli estão funcionando corretamente e verifique o cabeçalho X-Cache para verificar o comportamento de acerto do cache.
Principais configurações de compactação do CloudFront
- Compactar objetos automaticamente: a opção mestre para compactação do CloudFront - deve ser definida como true no comportamento do cache. O CloudFront compacta apenas objetos com mais de 1.000 bytes com cabeçalhos Content-Type compatíveis. Objetos com codificação de conteúdo já definida são passados sem recompactação.
- Política de cache - Accept-Encoding na chave de cache: a configuração mais crítica - EnableAcceptEncodingGzip: true e EnableAcceptEncodingBrotli: true informam ao CloudFront para armazenar em cache variantes separadas para cada codificação. Sem isso, o CloudFront armazena em cache apenas uma variante e pode fornecer a codificação errada aos clientes.
- Política de cabeçalhos de resposta - Vary: Accept-Encoding: Adiciona Vary: Accept-Encoding a todas as respostas, informando aos navegadores e caches intermediários para armazenar variantes separadas por codificação. Obrigatório para o comportamento correto quando o CloudFront está atrás de outro CDN ou proxy.
- Brotli requer HTTPS: os navegadores enviam apenas Accept-Encoding: br por meio de conexões HTTPS. As conexões HTTP receberão apenas respostas GZIP ou não compactadas. Sempre habilite a política de protocolo do visualizador de redirecionamento para https ao usar o Brotli.
Compressão CloudFront vs Compressão Origin
O CloudFront oferece suporte a dois modos de compactação: compactação automática (o CloudFront compacta dinamicamente) e ativos pré-compactados (a origem fornece arquivos com codificação de conteúdo já definida). Para respostas dinâmicas de API, a compactação automática é a única opção. Para ativos estáticos (JS, CSS, HTML), a pré-compactação no momento da compilação e o upload para S3 com Content-Encoding: gzip ou Content-Encoding: br é mais eficiente - elimina a sobrecarga de CPU de compactação do CloudFront e permite o uso de níveis de compactação mais altos (GZIP nível 9, Brotli nível 11). O guia de configuração de compactação do Cloudfront gera a configuração correta para ambos os modos.
Perguntas frequentes
O guia de configuração de compactação do Cloudfront gera uma configuração completa de comportamento do CloudFront para compactação Brotli e GZIP, incluindo políticas de cache, políticas de cabeçalhos de resposta e cabeçalhos Cache-Control corretos. Nosso guia on-line gratuito de configuração de compactação do Cloudfront produz etapas de console, Terraform, CloudFormation, CDK e saída AWS CLI. Toda a geração é executada no seu navegador sem necessidade de inscrição.
Sim. O CloudFront oferece suporte à compactação Brotli quando "Compactar objetos automaticamente" está habilitado e a política de cache inclui EnableAcceptEncodingBrotli: true. O CloudFront fornece Brotli para clientes que enviam Accept-Encoding: br (todos os navegadores modernos por HTTPS) e recorre automaticamente ao GZIP para clientes mais antigos.
Sim. Toda a geração de configuração é executada inteiramente no seu navegador usando JavaScript. Nenhum dado de configuração é enviado a nenhum servidor, armazenado remotamente ou transmitido pela rede.
Sim - 100% grátis, para sempre. Sem inscrição, sem conta, sem nível premium, sem limites e sem anúncios.
Sem Accept-Encoding na chave de cache, o CloudFront armazena em cache apenas uma variante de cada objeto. Se uma variante compactada for armazenada em cache primeiro, o CloudFront a veiculará para clientes que não oferecem suporte à compactação, causando um download interrompido. EnableAcceptEncodingGzip e EnableAcceptEncodingBrotli na política de cache corrigem isso.
O CloudFront compacta apenas objetos com pelo menos 1.000 bytes (1 KB). Objetos menores que 1 KB são servidos descompactados porque a sobrecarga do cabeçalho GZIP/Brotli os tornaria maiores. Objetos com codificação de conteúdo já definido pela origem são passados sem recompactação.
Para ativos estáticos (JS, CSS, HTML) veiculados no S3, a pré-compactação no momento da compilação é mais eficiente: elimina a sobrecarga da CPU de compactação do CloudFront e permite o uso de níveis de compactação mais altos. Para respostas dinâmicas de API, a compactação automática do CloudFront é a única opção.
Os navegadores enviam apenas Accept-Encoding: br por meio de conexões HTTPS. As conexões HTTP receberão apenas respostas GZIP ou não compactadas. Sempre habilite a política de protocolo do visualizador de redirecionamento para https ao usar o Brotli.
Use curl: curl -H "Aceitar codificação: gzip" -I https://YOUR-CF-DOMAIN/app.js. Procure Content-Encoding: gzip e Vary: Accept-Encoding na resposta. Verifique o X-Cache: acesse o cloudfront na segunda solicitação para confirmar se o cache está funcionando.