Nota previa: Este post es parte de la serie: La guía definitiva de WPO, si aún no les el artículo anterior puede que te sea complementario.
Espero poder resolver claramente las dudas sobre la compresión de un sitio web y si no resulta así, seguro me daré el tiempo de contestar un email.
Puede sonar bastante complejo, sobre todo porque es una actividad que debe realizarse del lado del servidor, pero en sí, consiste en comprimir los archivos de nuestro sitio web, código, imágenes, etc. para que el servidor lo envíe así por la red y el cliente lo descomprima para así mostrarlo al usuario (ojo, cuando en este contexto decimos CLIENTE nos referimos al navegador, el proceso es el siguiente: el cliente hace un requerimiento de archivos, en este caso la página web, al servidor y el servidor da una respuesta enviando los archivos solicitados (los elementos de la página).
3 razones para habilitar la compresión gzip
- Ahorro de ancho de banda en la transferencia, lo cual puede repercutir económicamente con un ahorro bastante considerable de transferencia e incluso evitar un colapso en caso de que su tráfico aumente drásticamente por alguna promoción, lanzamiento o un blast.
- Mejor velocidad del sitio, ya que los archivos tardarán menos en llegar a su destino. Esto es el principal punto por lo que se recomienda, recuerden en mobile unos segundos de espera pueden parecer minutos.
- Todos los navegadores lo soportan, no existe argumento alguno para descartar este tipo de optimización. Las ventajas al realizarlo son muchas.
Seguramente se preguntarán: ¿y cómo hago la compresión gzip? Sería injusto pedirles que configuren el servidor web para esta compresión, aunque quizá sea algo sencillo de hacer, meterse con un servidor puede dar miedo para quienes no están familiarizados. De cualquier manera, deben tener la información, para que puedan saber qué se debe hacer y comunicarlo con su técnico de TI de confianza.
¿Qué tipo de servidor tengo, Apache, Nginx o IIS?
Lo primero que debo saber es qué tipo de servidor tengo, ya que depende del sistema de cada el método que debemos implementar.
Si tu servidor es Apache
Si tu servidor es Apache deberías usar el método mod_deflate. Este es un módulo que habilita un filtro de salida DEFLATE, que permite comprimir antes de ser enviado al cliente por la red. Aquí la URL del sitio oficial de Apache donde pueden seguir las instrucciones de habilitación. http://httpd.apache.org/docs/current/mod/mod_deflate.html
Hace falta meterse un poco en las comunicaciones HTTP, que es el protocolo que se utiliza. Como ya lo comentamos, cuando un cliente hace una petición al servidor, el servidor envía los archivos. Para que lo anterior suceda, el servidor y el cliente se envían ciertas informaciones de control en las cabeceras HTTP. Cuando el cliente envía una solicitud también está enviando en las cabeceras un código de control (es una variable llamada “accept-encoding”), para decir si acepta o no el envío de archivos comprimidos, en realidad envía mucha más información, pero para este tema sólo nos interesa esta información. Como todos los navegadores aceptan tanto la compresión gzip como el Deflate en las cabeceras HTTP de la solicitud encontraremos la siguiente cadena que quiere decir que el navegador acepta el formato de compresión y el de Deflate:
El servidor también envía una en las cabeceras una variable para decir si finalmente se comprimieron o no los archivos de respuesta y el formato con el que se codificaron:
Si tu servidor es Nginx
Si usas Nginx, otro servidor muy usado para web, deberás utilizar este módulo que hace prácticamente lo mismo que el Deflate. A continuación les dejo un ejemplo de configuración para Nginx y la URL del sitio oficial para consultar variables extras:
http://nginx.org/en/docs/http/ngx_http_gzip_module.html
Si…¡diablos!, tu server es IIS
No es tan dramático, pero si requieres más apoyo. Afortunadamente, cuando se utiliza un servidor IIS suele existir un equipo especializado encargado. Para hacer este proceso se necesitan algunos pre requisitos y después realizar algunos procedimientos. Lo mejor es dejar esta tarea en manos de los administradores del server y les pueden regalar esta guía.
https://technet.microsoft.com/en-us/library/cc771003(v=WS.10).aspx
Te recomiendo leer el siguiente artículo de esta serie:
Te invito calificar el contenido y a seguirme en Twitter.
[yasr_visitor_votes]