Cómo habilitar compresión GZIP en WordPress

por | Ago 14, 2013 | Aprender WordPress

compresión GZIP en WordPress


Hablamos de cómo habilitar compresión Gzip en WordPress para acelerar la carga de contenidos estáticos y otros.

El tiempo de carga de un Blog o Tienda desarrollado con WordPress es importante, principalmente si tenemos muchos post o registros además de gran cantidad de llamadas al admin ajax.

Esto se puede traducir en una pérdida de tráfico, reducción de ventas (WooCommerce), y malos resultados en los indexados por parte de los motores de búsqueda -son sólo algunos de los efectos secundarios de un sitio de WordPress que carga lentamente.

 

La afirmación anterior demuestra que existe una correlación directa entre la velocidad de carga de la página y la retención de visitantes, tasa de rebotes e ingresos.

Además, incluso Google ha admitido públicamente que la velocidad de la página forma parte importante del factor de clasificación en su algoritmo de indexado.

Para la mayoría de sitios desarrollados con WordPress, un tiempo de carga de la página menor de 2 segundos es excelente, hasta 3 segundos es aceptable, y cualquier cosa por encima de 4 o 5 segundos afectará negativamente al posicionamiento en buscadores y la experiencia de los visitantes.

En versiones anteriores a la 2.5 de WordPress, las opciones de compresión Gzip venían de serie para ser gestionadas desde el dashboard, pero sencillamente se eliminaron y ahora esta tarea se gestiona a nivel servidor, es decir, desde tu cPanel.

Se puede realizar añadiendo algunas líneas en el archivo .htaccess o modificando un archivo de WordPress, tarea que puede realizar el usuario aún sin conocimientos técnicos del CMS.

Cabe decir que siempre antes de llevar a cabo este tipo de tareas es conveniente realizar una copia de seguridad, por ejemplo con All In One WP Migration.

 

 Compresión GZip por .htaccess


Este método implica editar el archivo .htaccess (el punto detrás del nombre del archivo indica que es un archivo oculto) con el Administrador de Archivos de tu cPanel para poder añadir código manualmente en el mismo.

Añadir código en htaccess:

La compresión GZIP debe estar habilitada en tu servidor web para que funcione.

  1. Edita el archivo .htaccess localizable en la carpeta de la instalación de WordPress.
  2. Antes del bloque # BEGIN WordPress añade el código indicado justo debajo.
  3. Guardar los cambios.
  4. Verificar con alguna herramienta como GiftofSpeed que los tiempos de carga se reducen y que se comprimen los estáticos y otros.
## Habilitar compresion para WordPress. <IfModule deflate_module>   <IfModule filter_module>       AddOutputFilterByType DEFLATE text/plain text/html       AddOutputFilterByType DEFLATE text/xml application/xml application/xhtml+xml application/xml-dtd       AddOutputFilterByType DEFLATE application/rdf+xml application/rss+xml application/atom+xml image/svg+xml       AddOutputFilterByType DEFLATE text/css text/javascript application/javascript application/x-javascript       AddOutputFilterByType DEFLATE font/otf font/opentype application/font-otf application/x-font-otf       AddOutputFilterByType DEFLATE font/ttf font/truetype application/font-ttf application/x-font-ttf   </IfModule> </IfModule> 

Verificación en GiftofSpeed tras habilitar compresión GZIP.


Verificación en GiftofSpeed

Haz clic en la imagen para ampliarla  

La aplicación de estas llamadas al módulo DEFLATE desde el archivo .htaccess permitirá la compresión de archivos html, javascript, CSS, xml, es decir, archivos estáticos.

Importante La compresión GZIP no funciona con imágenes o archivos multimedia.

Algunos archivos de imágenes, como los MPEG o WAV, se comprimen bien con GZIP. Otros archivos, como los MP3 pueden aumentar de tamaño si intentas comprimirlos.

Servidores con panel de control cPanel

Si estás usando cPanel como panel de control de la cuenta de alojamiento, como en el hosting WordPress de Webempresa, lo tienes bastante fácil, simplemente accede al “Panel de control de cPanel” >> “Optimizar el sitio web” >> “Comprimir todo el contenido”, y pulsa en “Actualizar configuración”.

cPanel se encargará de actualizar tu web para que todo el tráfico vaya comprimido con GZIP.

 

2015-09-18--1442600682_870x232_scrot
2015-09-18--1442600723_1159x480_scrot

Servidores sin cPanel con servidor web Apache

Si no usas cPanel, y estás usando un servidor Web Apache, prueba primero añadiendo este código al final del todo del fichero .htaccess de tu web:

<ifModule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_item_include file .(html?|txt|css|js|php|pl)$
mod_gzip_item_include handler ^cgi-script$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^application/x-javascript.*
mod_gzip_item_exclude mime ^image/.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</ifModule>

Luego pasa el test de Pagespeed nuevamente y comprueba si ya no dice que el contenido no está comprimido. Si ahora ya te avisa de que el contenido está comprimido, ¡ enhorabuena !, si el contenido sigue sin estar comprimido en gzip, seguramente tu servidor no tenga instalado el módulo de Apache mod_gzip, borra este código y prueba colocando el siguiente código que te indicamos:

AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript

Pasa el test de Google PageSpeed nuevamente y comprueba si ahora aparece el contenido comprimido.

Servidores sin cPanel con servidor web Nginx

En el caso en que tu servidor Web sea Nginx, tendrás que localizar el fichero de configuración de tu web y añadir este código:

gzip on;
gzip_comp_level 2;
gzip_http_version 1.0;
gzip_proxied any;
gzip_min_length 1100;
gzip_buffers 16 8k;
gzip_types text/plain text/html text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript;

# Disable for IE < 6 because there are some known problems
gzip_disable “MSIE [1-6].(?!.*SV1)”;

# Add a vary header for downstream proxies to avoid sending cached gzipped files to IE6
gzip_vary on;

En el caso de que uses nginx, si no tus conocimientos técnicos no son muy altos, te recomendamos que hables primero con el administrador del blog o el administrador del servidor.

Con estas recomendaciones deberías de poder habilitar GZIP en tu web y hacer que Google te valore mejor y tu web cargue más rápida.

 Ventajas de la compresión Gzip


  • Reduces el número de peticiones al servidor.
  • Mejors la carga de los contenidos de portada del Blog.
  • Contribuyes a mejorar la experiencia del usuario (UX).
  • Mejoras el posicionamiento de tus contenidos.

 Inconvenientes de la compresión Gzip


  • Mayor consumo de recursos del servidor (CPU/RAM).
  • Debes vigilar en posteriores actualizaciones que los cambios permanecen.

 Ignorar navegadores problemáticos


Es posible que algunos navegadores no interpreten bien el módulo DEFLATE y en estos casos es mejor excluirlos mediante código insertado en tu archivo .htaccess justo debajo del anterior código.

## Anular en los navegadores que dan problemas con GZIP  	BrowserMatch ^Mozilla/4 gzip-only-text/html 	BrowserMatch ^Mozilla/4\.0[678] no-gzip 	BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html 	Header append Vary User-Agent 

Navegadores como Google Chrome no parecen presentar problemas con DEFLATE pero una forma de inspeccionar este tipo de cabeceras y ver que sucede en tu web desde Chrome es usando la extensión para navegador llamada ModHeader que te permite inspeccionar y modificar las cabeceras de peticiones y respuestas así como añadir y modificar cabeceras de peticiones HTTPS y cabeceras de respuesta.

 

 Conclusiones


Casi todos los sitios web en la actualidad utilizan una mezcla de lenguajes de programación como HTML, CSS o JavaScript).

Reducir estos archivos, que básicamente son archivos de texto, ayudará a acelerar los tiempos de carga de la web considerablemente.

Existen servicios muy populares como Google PageSpeed Insights donde puedes evaluar los tiempos de carga de cada uno de los elementos de tu web y así analizar en detalle si algún estático está causando cuellos de botella y aumentando los tiempos de carga para resolverlo.

Utilizando plugins para WordPress como optimizador.io ayudarás que que todas las imágenes que uses en tu Tema y en tus publicaciones, se compriman sin pérdida de calidad y de esta forma mejorarás más la carga de tu web y con ello el posicionamiento.

 

Tiempos de carga de tu web por encima de 3 o 4 segundos afectan negativamente a tu sitio, empeorando su posicionamiento y provocando que el número de visitas a tus contenidos baje drásticamente.

     

5/5 (1 Review)