Activar HTTP2

¿Que es Http2?

No todo el mundo está al día sobre el protocolo http2.
De hecho muchas webs que hablan de Seo no tocan el tema del http2.
¿Pero es realmente importante tener Http2 en nuestras webs?

Para saber que es Http2, como siempre, la wikipedia tiene su propia entrada y nos lo explica perfectamente -> Wikipedia

Al final del artículo te pongo un enlace para intentar activar el Htpp2 con un script

Resumiendo en un lenguaje muy básico, podríamos decir que es un protocolo más avanzado, que hace llegar la información mucho antes.
La información es más rápida por varios motivos:

  • El contenido es binario y viaja comprimido.
  • El flujo está menos fragmentado haciendo que servidor y cliente tengan menos necesidad de “conversar”.
  • La comunicación está multiplexada y se hace forma asíncrona (en lugar de forma ordenada y sincronizada)

Y estos son los aspectos más básicos para hacernos comprender la diferente entre Http2 y Http1.X

Por su propio nombre, podríamos pensar que Http2 es el sucesor de Http1.1, pero no, en realidad es una optimización del protocolo SPDY (Protocolo creado por google para que su navegador google chrome fuese el más rápido)

¿Que nos ofrece Http2?

Pues nos brinda una comunicación bastante más rápida y fluida que se nota de forma notable desde cualquier dispositivo.
Una forma automática y totalmente desatendida para acelerar las cosas, nada de configuraciones, incompatibilidades, actualizaciones… Es algo nativo en el propio Internet.

¿Me interesa activar http2?

Pues sí, encarecidamente.
Si a alguien le interesa optimizar una web con plugins, optimizar su seo, este debería ser el primero de sus prioridades.
Más deberíamos de tener en cuenta, que el monstruo de Google siempre está pendiente de las optimizaciones de todos, más cuando además nos imponen cosas como “activar https”, podemos esperar una buena respuesta del “tito google” si hacemos nuestros esfuerzos para mejorar las cosas.

Aquí una web interesante que nos hace entender la diferencia de velocidad entre el protocolo normal y este.
https://imagekit.io/demo/http2-vs-http1

¿Puedo activar http2 en un hosting compartido?

Lamentablemente no, porque para activar http2 es imprescindible tener acceso al sistema para instalar paquetes y modificar archivos de configuraciones.

¿Y si finalmente no puedo activarlo?

Pues nada amigo, es como si te quedas disfrutando del FullHd porque el 4K se te va de precio. No pasa naaaaaaa.

¿Que necesito para poder activar este protocolo?

Pues a día de hoy, no es realmente fácil poder activarlo.
Depende del sistema operativo en sí.
Tengo un amigo en canadá con su propio hosting en casa, con CentOs, pagando religiosamente 2 licencias de Cpanel, y no lo ha conseguido.
Hay que tirar mucho de Howtos y Foros, y tocar madera.

Yo tengo mis webs con Debian 9 y VestaPanel, y en principio parecía que no se podía.
Lo intenté sobre apache2 y sobre nginx, y no me funcionó.

Si tienes apache2+nginx, es más lógico aplicarlo sobre nginx, porque es el que hace de caché.
Si la primera entrega de una web no cacheada se hace sobre Http1.1, no importa, a partir del cacheo se hará sobre Http2.

¿Como activar Http2?

Como dije antes, dependiendo del sistema de cada uno, hay que lidiar entre blogs y experiencias ajenas.

Forma de activarlo automáticamente (Así lo hice yo)

Tras varios días y varios cabezazos, encontré la solución en un repositorio GIT que encontré como un milagro, publicado por Víctor Díaz Marco.
El repositorio lo puedes encontrar aquí:
http://skamaker.com/4z2k

Este script tarda un poco en hacer sus cosas, por lo que he podido ver parece que recompila el nginx para hacerlo compatible con Http2 y Alpn

Según los requisitos de Victor, yo no iba a estar entre los felices candidatos, pero ejecuté su pequeño script, y buala!!! fuí feliz en menos de 5 minutos.

Ya he activado Http2. ¿Eso es todo?

Pues no, después de eso hay que comprobar.
Se pueden dar dos casos dramáticos:

  • Que Http2 esté activado, pero no esté funcionando (caso bastante común, que el sistema te permita la instalación y todo parece estar OK, y luego no obtienes el comportamiento esperado)
  • Que Http2 esté activado, funcionando, pero el navegador no se entera de que la web tiene el protocolo activado.

Este último caso me sucedió a mi, y no salía del atasco hasta ejecutar el script que he mencionado antes.
Resulta que para que los navegadores acepten usar este protocolo, no es suficiente con la activación del mismo, si no que se requiere de la habilitación de TLS y de una extensión llamada ALPN.

Comprobar que realmente estoy usando Http2

Desde tu propio entorno y casi cualquier navegador.
Abre un firefox, abre un chrome, y pulsas F+12 para abrir las herramientas para desarrolladores.
Haz click en “Network”, allí podrás ver cada componente que el navegador va cargando, el nombre de cada recurso, su tamaño, su tiempo de carga, y.. SU PROTOCOLO.

Comprobar http2

Comprobar http2

Donde “Protocol” es donde vemos si estamos ofreciendo correctamente el protocolo Http2 (identificado como “h2”)

Otra forma de averigüarlo, es encontrar algunas de las webs gratuitas que hacen el chequeo.
Mi favorita es https://tools.keycdn.com/http2-test

Ejemplos de Http2

Pues este mismo blog es un ejemplo. Comprueba con la herramienta del F12 y siente como es la velocidad de carga de unas y otras páginas.

Web de ejemplo del super seo de Romulad Fons.
Curiosamente usa como server “LiteSpeed”, y los protocolos Http2 y Spd en su web demostrativa  https://avesexoticas.org/

Deja un comentario

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