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
- Abre una ventana de navegación privada.
- Abre las herramientas de desarrollo y selecciona Network.
- Desactiva la caché del navegador para la solicitud de diagnóstico.
- Carga la página HTTPS pública.
- Selecciona el documento principal.
- 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-Lengthcuando 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:
- invalida solo la ruta de prueba si puede existir un objeto más antiguo;
- observa el rellenado inicial del borde;
- repite hasta que se informe un acierto de caché;
- confirma que el acierto conserva la codificación correcta;
- 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ó
brogzip; - el origen suministró un
Content-Typecompatible; - el
Content-Lengthes 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.