Para habilitar la compresión Gzip en Nginx, es necesario modificar el archivo de configuración del servidor. Gzip comprime los archivos antes de enviarlos al navegador del cliente, reduciendo el uso de ancho de banda y mejorando el rendimiento.
1. Acceder al archivo de configuración de Nginx:
Utiliza un editor de texto como nano
o vim
para abrir el archivo de configuración principal de Nginx. Por lo general, se encuentra en /etc/nginx/nginx.conf
.
sudo nano /etc/nginx/nginx.conf
2. Activar el módulo Gzip:
Dentro del bloque http {}
, agrega o verifica que las siguientes directivas estén presentes:
http {
gzip on;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
gzip_vary on;
gzip_min_length 1000;
gzip_proxied any;
gzip_buffers 16 8k;
}
Explicación de las directivas:
gzip on;
: Activa la compresión Gzip.
gzip_types
: Especifica los tipos de archivos que se comprimirán, como archivos HTML, CSS, JSON y JavaScript.
gzip_vary on;
: Agrega el encabezado Vary: Accept-Encoding
, lo que garantiza que los proxies y navegadores gestionen correctamente el contenido comprimido.
gzip_min_length 1000;
: Define el tamaño mínimo del archivo que se comprimirá (en bytes).
gzip_proxied any;
: Permite comprimir las respuestas incluso cuando el cliente está detrás de un proxy.
gzip_buffers 16 8k;
: Define la cantidad y el tamaño de los buffers utilizados para comprimir.
3. Probar la configuración:
Antes de reiniciar Nginx, verifica si la configuración es válida con el siguiente comando:
sudo nginx -t
4. Reiniciar Nginx:
Si todo está correcto, reinicia el servicio de Nginx para aplicar los cambios:
sudo systemctl restart nginx
1. Comprimir archivos JSON y XML:
Gzip puede ser utilizado para comprimir respuestas API JSON o archivos XML, lo que reduce significativamente el tiempo de carga de las solicitudes API.
La compresión de archivos CSS y JavaScript es especialmente útil para mejorar el rendimiento de sitios web estáticos.
Para más detalles sobre la configuración de Gzip en Nginx, puedes consultar la documentación oficial de Nginx:
Jorge García
Fullstack developer