Artículos Guías Manuales Sistemas Linux Windows Redes MySql Binario 0 Binario Cero
Artículos Guías Manuales Sistemas Linux Windows Redes MySql Binario 0 Binario Cero

Dónde ubicar la compresión en una infraestructura Cloudflare a Nginx Proxy Inverso a Nginx Backend

Loading

En arquitecturas modernas con CDN y múltiples capas de proxy, la ubicación de la compresión es tan importante como la compresión en sí. Una mala decisión puede provocar doble compresión, ineficiencia de caché y consumo innecesario de CPU.

Este artículo define la ubicación correcta de la compresión en una infraestructura con Cloudflare, un Nginx proxy inverso y un Nginx backend.

Topología de referencia

Cliente
↓
Cloudflare (CDN)
↓
Nginx Proxy Inverso
↓
Nginx Backend

Rol de cada capa

Cloudflare

  • Terminación TLS
  • Brotli / Gzip
  • Caché global
  • Optimización de contenido

Nginx Proxy Inverso

  • Control de cabeceras
  • Caché intermedia (proxy_cache)
  • Seguridad y rate limiting

Nginx Backend

  • Generación de contenido
  • Lógica de aplicación
  • Acceso a recursos internos

Ubicación correcta de la compresión

Compresión habilitada en:

  • Cloudflare (Brotli/Gzip)
  • Nginx proxy inverso (Gzip como fallback)

Compresión deshabilitada en:

  • Nginx backend

Justificación técnica

  1. Cloudflare siempre descomprime y recomprime el contenido.
  2. La compresión en el backend no llega al cliente final.
  3. Se evita la doble compresión y el desperdicio de CPU.
  4. La caché funciona mejor sin múltiples variantes de Accept-Encoding.
  5. El proxy inverso es el último control interno antes del CDN.

Configuración recomendada por capa

Cloudflare

  • Brotli: Activado
  • Auto Minify: Opcional
  • Rocket Loader: Desactivado en WordPress

Nginx Proxy Inverso

  • Gzip: Activado
  • Brotli: No necesario

Nginx Backend

  • Gzip: Desactivado
  • Brotli: Desactivado

Validación del diseño

Desde Internet

curl-I https://dominio

Debe devolver:

Server: cloudflare
Content-Encoding: br|gzip

Desde el proxy al backend

curl-I http://backend

No debe aparecer Content-Encoding.

Conclusión

La compresión debe habilitarse una sola vez, en el punto más cercano al cliente que controle la salida del tráfico. En infraestructuras con Cloudflare, esto implica delegar Brotli al CDN y usar Gzip únicamente en el Nginx frontal, manteniendo el backend limpio y eficiente.

You may also like...