Por fin me he decidido a utilizar una CDN para puerto53.com y, la verdad, he notado muchísimo la mejora de rendimiento de WordPress. Me he decantado por keycdn.com. Luego explicaré por qué.
Si no sabes lo que es una CDN, no quiero repetirme, puedes echarle un vistazo al post CloudFront – Redes de Distribución de Contenido o CDNs.
Te avanzo que tu página WEB va a ir más rápida porque va a servir contenido cacheado desde servidores externos ubicados en diferentes lugares del mundo para que el usuario reciba siempre el contenido del lugar más cercano a su conexión.
Por lo tanto, es importante para posicionar mejor tu WEB.
¿Por qué he decidido utilizar KeyCDN?
Obviamente, antes de utilizar una CDN me he informado en diferentes foros y otros blogs. Hasta el momento, yo estaba utilizando la versión gratuita de Cloudflare, pero el blog no terminaba de ir lo suficientemente rápido que yo quería y no me quería gastar más dinero en un servicio de hosting más caro ni pagar los 20$ mensuales de Cloudflare para un blog personal como este.
Así, que mientras me informaba sobre diferentes servicios de CDN vi que KeyCDN cumplía con los requisitos más importantes para mi:
- Velocidad del servicio.
- Buen precio (49$ al año por el tráfico que tengo actualmente).
- Servidores de caché en las zonas desde donde tengo visitas que son, básicamente, España y Estados Unidos.
Además, tienes 14 días de prueba, por si no te convence el servicio. Por lo tanto, me he decidido a probarlo y he quedado muy satisfecho. Ahora os cuento por qué.
¿Cómo se configura KeyCDN?
La configuración de KeyCDN es muy sencilla. A continuación, vamos a ver cada uno de los pasos con detalle:
Creación básica de una zona
Una vez que ya nos hemos registrado, lo primero que tenemos que hacer es crear una zona y editar las características que nos interesan:
Lo que vemos en esta vista es:
- El identificador de la zona que hemos creado (lo utilizaremos más tarde para configurar WordPress).
- El nombre de la zona (lo utilizaremos más tarde para la configuración de un alias).
- La URL de la zona, que no es muy amigable y por eso crearemos luego un alias.
- La URL origen desde donde vamos a extraer el contenido.
La creación de la zona tarda un ratito en sincronizarse, dependiendo de la cantidad de contenido que deba copiar. En mi caso, unos 15 minutos, aproximadamente.
Desde el mismo momento en que la zona está creada, ya tenemos disponible nuestro contenido en la URL de la zona de CDN asignada, pero todavía no hemos terminado.
Ahora vamos a profundizar un poco en las opciones avanzadas para la creación de la zona.
Añadir un nuevo CNAME en el DNS
Como comentaba anteriormente, estoy utilizando los DNSs de Cloudflare, pues son muy rápidos.
Para poder utilizar la CDN de Keycdn, lo que tengo que hacer es añadir un nuevo CDN que apunte a la zona creada en keycdn, es decir, la URL cnd.puerto53.com apunta a puerto53-1a640.kxcdn.com.
Sin esta entrada, la URL cdn.puerto53.com nunca podrá ser resuelta.
Creación de un certificado SSL Wildcard
Para que podamos acceder a la URL de la nueva CDN por https en vez de por http, es decir, acceder a https://cdn.puerto53.com, necesitaremos crear un certificado SSL wildcard. Este tipo de certificados sirven para incluir los subdominios y no sólo el dominio principal.
En mi servicio de hosting ProfesionalHosting, esto lo podemos hacer de una manera muy sencilla:
- Entramos al Plesk
- Let’s Encrypt
- Generar certificado wildcard
El proceso nos pide que añadamos una nueva entrada CNAME en el DNS, igual que hicimos anteriomente con la zona CDN. Una vez hecho esto, en 15 segundos ya tenemos el certificado wildcard habilitado.
Opciones avanzadas de la creación de la zona CDN en Keycdn
Ahora ya tenemos todos los prerrequisitos para continuar con la configuración de la zona CDN, editamos la zona y vamos configurando las características que nos interesan.
Dependiendo de como tengamos configurado nuestro hosting, los servicios que tenga habilitados y nuestras necesidades, habilitaremos unas opciones u otras. En mi caso, he configurado la zona de la siguiente manera:
- Tipo de zona: Pull – Es la que se utiliza normalmente. El servicio de CDN se encarga de sincronizar el contenido automáticamente. Push se utiliza para sincronizar contenido manualmente.
- Cache Brotli: Enable – Solamente se puede habilitar si tu servicio de hosting utiliza este método de compresión de contenido. ProfesionaHosting lo utiliza porque usa Litespeed.
- Canonical header: Enable – Es muy importante decirle a Google que el contenido original está en la URL original y no en la URL de la CDN.
- SSL: Letsencrypt – Utilizamos el certificado SSL wildcard que hemos generado anteriormente con Let’s Encrypt.
- Force SSL: Disable – Pensaba que esta opción la debería tener habilitada pero, si lo hago, la URL de la CDN no carga por «demasiadas redirecciones» (ERR_TOO_MANY_REDIRECTS), así que la he dejado deshabilitadas y todo funciona perfectamente y por HTTPS.
Hay muchas más opciones de configuración, pero las he dejado por defecto. Sólo he comentado las más importantes.
Creación de un alias para la CDN
Anteriormente, habíamos creado un CNAME nuevo en el DNS para cdn.puerto53.com, que lo utilizaremos como la URL «alias» de nuestra CDN, pero todavía no hemos creado este alias dentro de keycdn.
Iremos al menú «zone aliases» y crearemos un nombre personalizado para la zona que hemos creado anteriormente.
Configuración del plugin de WordPress CDN Enabler
Ahora que ya tenemos configurada todas las características de la CDN, DNSs y certificados SSL, procederemos a configurar WordPress para que podamos utilizar la CDN.
Lo primero que tenemos que hacer es instalar el plugin de WordPress CDN Enabler, que está creado por Keycdn e indicar la API que nos ha proporcionado keycdn, el alias de la URL de la CDN y los ficheros que queremos que se sirvan desde la CDN y no de nuestro hosting (imágenes, vídeos, javascript, etc.).
Antes de activar la URL de la CDN, el plugin comprueba que no de errores.
Configurar la CDN en Litespeed cache
Hace tiempo ya escribí acerca del plugin Litespeed cache para mejorar el rendimiento de WordPress. Pues bien, este plugin también tiene la opción de configurarlo con una CDN.
Probando keycdn
Ahora que ya tenemos configurada nuestra CDN, es hora de probar si funciona. Para ello, cargo cualquier de las URLs del blog y cualquier estilo, script JS, foto, etc. debería cargar desde la URL de la CDN.
Vamos a verlo:
Si os interesa configurar keycdn en vuestro blog para que vaya más rápido, os dejo mi enlace de afiliados: keycdn.com.
Por cierto, según pingdomtools, probando desde Frankfurt, la portada ha pasado de cargar completamente desde 8,62 segundos a 1,56.
Mi pasión por la tecnología me lleva constantemente a explorar las últimas tendencias y aplicaciones, buscando siempre formas de implementar soluciones innovadoras que mejoren la eficiencia. En puerto53.com comparto contenido valioso para ayudar a otros profesionales y entusiastas de la informática a navegar y dominar el complejo mundo de la tecnología. Mi especialidad en Linux RedHat.
Más sobre mí en el este enlace,
Estaba buscando una CDN pero no tengo muchos conocimientos técnicos. KeyCDN me viene como anillo al dedo.
La he podido configurar en cuestión de 10 minutos.
Muchas gracias.