654380491
hola@carlosdk.com
Login
[miniorange_social_login]

Login with your site account

Lost your password?

Carlos DK Carlos DK
  • Inicio
  • Kit digital
  • Universo Dk
  • Blog
  • Contacto
Back
  • Inicio
  • Kit digital
  • Universo Dk
  • Blog
  • Contacto
  • Home
  • Blog
  • Tutoriales formativos
  • Apache no me comprime con gzip la web para optimizar el contenido para Google

Tutoriales formativos

04 Nov

Apache no me comprime con gzip la web para optimizar el contenido para Google

  • By Carlos Dk
  • In Tutoriales formativos
  • 0 comment

Bienvenidos a VerTutoriales.com, si estáis optimizando vuestra web por ejemplo para Google con PageSpeed Insight, es posible que os esté pidiendo que comprimáis el contenido para reducir el tiempo de carga de la web, algo recomendable en la mayoría de los casos aunque penalice nuestro servidor.

Este era mi caso, lo único que ocurría es que ya había probado a comprimir el contenido de varias formas, utilizando la compresión desde htaccess:

Comprimir utilizando GZip

[codesyntax lang=”apache”]

<IfModule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_item_include file .html$
mod_gzip_item_include file .php$
mod_gzip_item_include file .css$
mod_gzip_item_include file .js$
mod_gzip_item_include mime ^application/javascript$
mod_gzip_item_include mime ^application/x-javascript$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include handler ^application/x-httpd-php
mod_gzip_item_exclude mime ^image/.*
</IfModule>
[/codesyntax]

 Utilizando Deflated:

[codesyntax lang=”apache”]

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

[/codesyntax]

La cosa es que ninguno de estos me funciono, así que seguí a la caza buscando el código y localización correcta para configurarlo… me tiré directamente a Apache para configurarlo por defecto para todas las páginas, no me gustó la idea mucho, primero por que teniendo multitud de webs en producción realizar un cambio de esta envergadura puede llevar al caos y  la incidencia para varias decenas de webs… segundo por que al realizar la compresión el servidor consume un mayor número de recursos en comprimir la información para las peticiones que recibe. Aún así… estaba decidido a comprimir la web y probar si ayudaba a posicionar la web 😉

Lo primero era buscar donde se encuentra el fichero de configuración del servidor web Apache, en mi caso utilizaba en este servidor Centos con Plesk, por lo que la configuración por defecto está en:

 /etc/apache2/apache2.conf

Para editarlo simplemente hay que abrirlo utilizando alguno de los editor de texto, por ejemplo “vim”. Una vez abierto, hay que añadir una nueva declaración, por ejemplo, si vamos a utilizar deflated para comprimir:

[codesyntax lang="apache"]
<IfModule mod_deflate.c>
SetOutputFilter DEFLATE
# Don’t compress
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI \.(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary
#Dealing with proxy servers
<IfModule mod_headers.c>
Header append Vary User-Agent
</IfModule>
</IfModule>
[/codesyntax]

Luego hay que reiniciar el servicio, dependiendo de tu versión puede ser

service httpd restart

Después de reiniciar el servidor Apache y comprobar de nuevo la compresión…. sorpresa! Aún no estaba funcionando… algo raro pasaba, había probado los dos métodos para comprimir que conocía, tiré de Google para seguir buscando más opciones, pero pasaban por modificar el htaccess o configurar Apache…

La sorpresa de nginx

Ya es hora de conocer este servidor optimizado para webs 🙂 Con las últimas versiones de “autoinstalación” de mis servidores, no me había entretenido a probar el servidor que estaba corriendo, de hecho en alguno lo he tenido que tener deshabilitado para que no entrara en conflicto con versiones antiguas de algunos clientes y sus gestores de tiendas.

Sí, nginx era lo que no estaba comprimiendo y era a su vez el que estaba sirviendo las webs, por eso todas las configuraciones que estaba utilizando para Apache no funcionaban… NORMAL.

Así que paso a daros los pasos que dí para configurar finalmente el servidor nginx para comprimir las webs

Como anteriormente, hay que buscar el fichero de configuración de nginx y editarlo

vi /etc/nginx/nginx.conf

Una vez tenemos abierto el fichero de configuración del servidor, hay que buscar la linea de http con sus parámetros de configuración que viene entre llaves {}. Encontrada esta línea simplemente hay que añadir tal y como indico a continuación para configurar Gzip:

[codesyntax lang=”apache”]

http {
gzip on;
gzip_http_version 1.1;
gzip_vary on;
gzip_comp_level 6;
gzip_proxied any;
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript text/x-js;
gzip_buffers 16 8k;
gzip_disable "MSIE [1-6].(?!.*SV1)";
}

[/codesyntax]

Y listo! Con este puñado de líneas tendremos configurado nuestro servidor para la compresión.

He de decir que los múltiples golpes recibidos para esta configuración casi me llevaron a la desesperación, pero el resultado de un punto verde en Google es como recibir el aprobado que tanto esperábamos en esa asignatura que se nos hacía cuesta arriba en el instituto!

Además el tiempo de carga de la web casi se redujo a la mitad, hablamos de milisegundos, pero todo cuenta 😉

Si os ha resuelto la duda… compartid, dar like o comentad

Tags:Apachegooglelinuxposicionamiento
  • Share:
Carlos Dk

You may also like

Crear categorías y configurar menú en WordPress en 4 min.

  • marzo 3, 2019
  • by Carlos Dk
  • in Tutoriales formativos
Crear categoría y menú WordPress Es indispensable en una nueva instalación de WordPress, crear las...
Instalar tema en WordPress en 2 pasos
febrero 23, 2019
Actualizar MySQL 5.1 a 5.6 en CentOS 6.9 con Plesk como panel
octubre 20, 2018
Recorrer todos los objetos de una capa o del DOM completo con JQuery
diciembre 22, 2014

Leave A Reply Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Busca en la web

Recomiendo

Software ERP empresarial

Categorías

  • Miscelanea (129)
  • Tutoriales formativos (622)

Ponte en contacto

+34 654380491

hola@carlosdk.com

Torre del Mar (Málaga)

Enlaces rápidos

  • Universo Dk
  • Contacto
  • Blog

Soy social

  • Twitter
  • Linkedin
  • Youtube

Newsletters

Suscríbete para enterarte de lo último que estoy haciendo. No lo usaré para enviarte SPAM inútil 😉

Esta web la he diseñado con cariño en Andalucía por Carlos Dk