Verifica la entrega de Brotli o Gzip

La compresión se demuestra mediante la respuesta HTTP pública, no mediante los archivos del directorio de POM Cache. Prueba al menos una página HTML apta y un recurso de texto apto a través del mismo comportamiento del CDN.

Inspecciona en un navegador

  1. Abre una ventana de navegación privada.
  2. Abre las herramientas de desarrollo y selecciona Network.
  3. Desactiva la caché del navegador para la solicitud de diagnóstico.
  4. Carga la página HTTPS pública.
  5. Selecciona el documento principal.
  6. Inspecciona Response Headers.

Busca:

Content-Encoding: br

o:

Content-Encoding: gzip

Compara el tamaño Transferred con el tamaño decodificado/del recurso. El valor transferido normalmente debería ser menor para el contenido compresible.

Que aparezca HTTP/2 o HTTP/3 en la columna de protocolo no demuestra la compresión del cuerpo. El protocolo de transporte y el Content-Encoding son diferentes.

Compara las codificaciones solicitadas explícitamente

Utiliza una URL de prueba pública aprobada:

curl -sS -D - -o /dev/null \
  -H 'Accept-Encoding: br,gzip' \
  'https://example.com/about/'

Luego solicita identidad:

curl -sS -D - -o /dev/null \
  -H 'Accept-Encoding: identity' \
  'https://example.com/about/'

La primera respuesta puede usar br o gzip. La solicitud de identidad no debería indicar una codificación que el cliente excluyó.

Usa --compressed al descargar y decodificar un cuerpo comprimido con curl. Sin ello, curl puede guardar los bytes codificados exactamente como se transfirieron.

Confirma la capa

Registra:

  • Content-Encoding;
  • Content-Type;
  • Content-Length cuando esté presente;
  • evidencia de acierto/fallo del CDN y de antigüedad;
  • Vary;
  • la cabecera de acierto PHP de POM Cache, si la solicitud llegó a esa ruta de origen.

Un acierto de CloudFront con Content-Encoding: br muestra una respuesta Brotli comprimida en el borde o almacenada en la caché del borde. Una cabecera phase=early de POM Cache solo describe el origen de la página.

La política de caché del CDN es la autoridad en cuanto a variantes de compresión. No asumas que ver únicamente Vary: Accept-Encoding demuestra que la clave del borde es correcta.

Calienta y vuelve a probar

Ejecuta la solicitud compatible más de una vez:

  1. invalida solo la ruta de prueba si puede existir un objeto más antiguo;
  2. observa el rellenado inicial del borde;
  3. repite hasta que se informe un acierto de caché;
  4. confirma que el acierto conserva la codificación correcta;
  5. prueba una preferencia de codificación del visitante diferente.

Esto detecta una política que comprime el fallo pero almacena o reutiliza las variantes de forma incorrecta.

Por qué una respuesta puede permanecer sin comprimir

Para CloudFront, comprueba:

  • Compress objects automatically está habilitado en el comportamiento correspondiente;
  • la política de caché habilita los formatos de compresión deseados;
  • el visitante envió br o gzip;
  • el origen suministró un Content-Type compatible;
  • el Content-Length es válido;
  • el objeto está dentro del rango de tamaño de compresión automática de CloudFront;
  • el estado y el cuerpo de la respuesta cumplen los requisitos;
  • un objeto de identidad más antiguo no sigue almacenado en caché;
  • el origen no envió ya un Content-Encoding.

CloudFront documenta estas condiciones en Serve compressed files.

No esperes que todos los recursos se reduzcan

JPEG, PNG, WebP, vídeo, ZIP y otros formatos ya comprimidos pueden no ser aptos o no beneficiarse. Centra la verificación de Brotli/Gzip en HTML, CSS, JavaScript, JSON, SVG y otros tipos orientados a texto compatibles.

Si el origen y el borde no coinciden, usa Distinguish the origin cache from the CDN cache antes de cambiar POM Cache.