En mi último encuentro en Madrid con Guillermo Carvajal
salió a colación el CDN de Amazon
para optimizar el tiempo de carga. Gracias a él puedo publicar esta entrada en Blogpocket.
Pero antes de entrar en materia, te recomiendo como introducción la lectura de los siguientes posts:
¿Qué es un CDN?
En pocas palabras, un CDN es un repositorio externo a tu blog, que sirve de almacenamiento y que lleva asociado un servicio de transmisión rápida de archivos. Entre los muchos servicios que ofrece Amazon S3
, se encuentra CloudFront
que optimiza de forma muy eficiente la transmisión de archivos por lo que es ideal para guardar aquellos archivos que más tardan en cargarse, como las imágenes, los scripts y las hojas de estilo. Ambos servicios son de pago y se factura por el consumo de transmisión de datos.
Nos centraremos sobretodo en las imágenes. Conviene que todas se encuentran almacenadas en el directorio local del servidor donde tienes alojado tu blog. Este suele ser “wp-content/uploads”. Si has utilizado imágenes de tu cuenta de Flickr, puedes pasarlas todas a este directorio local con el plugin Add Linked Images To Gallery
. Este plugin te copiará todas las imágenes desde Flickr y modificará todas las URL’s de las entradas de tu blog correspondientes a las imágenes. Además, a partir de entonces, podrás seguir utilizando Flickr y enlazarlo en tus nuevas entradas; y cuando las publiques, automáticamente se cambiarán las URLs.
Registro en Amazon S3 y creación de un “bucket”
El siguiente paso será registrarte en Amazon S3. Si tienes cuenta de Amazon
puedes entrar directamente en aws.amazon.com/es/
e ir a la Consola de Administración de AWS
. Ahí deberás crear un “bucket” o carpeta para tus archivos. En la región elige Irlanda. Al pinchar en “Create Bucket” la primera vez, deberás proporcionar tus datos de registro y facturación.
Registro en CloudFront y creación de una “distribución”
Una vez registrado en Amazon S3 y creado el “bucket”, podrás asociar una “distribución” en el CloudFront pero antes tendrás que suscribirte a dicho servicio. Entra en aws-portal.amazon.com/gp/aws/manageYourAccount
y pincha en el enlace para suscribirte a la lista de servicios (entre los que se encuentra CloudFront). Tendrás que volver a dar tus datos de facturación y para verificar la validez de tu cuenta tendrás que llamar a un teléfono y proporcionar a la locución automática (en inglés) el pin que aparecerá en la página de suscripción.
Para crear la distribución en el CloudFront, haz click en el botón “Create distribution”, selecciona el “bucket” y, en la ventana siguiente, rellena el nombre del CNAME que crearás, a continuación, en tu hosting para manejar el enlace del tipo static.midominio.com en lugar del propio del CloudFront. El resto de valores son: Logging “Off” y Distribution Status “Enabled”.
Una vez creada la distribución, apunta el “Domain name” porque lo necesitarás para crar el CNAME.
Ahora haremos dos cosas: crar el CNAME en el hosting del blog y apuntar las credenciales de Amazon S3.
Creación de un CNAME en tu hosting
La creación de un CNAME para tu dominio depende del panel de administración que se utilice para tu hosting. Pero, en general, consiste en seleccinar tu dominio y entrar en el apartado de gestión de DNS. Ahí tiene que existir la opción de añadir registros de un dominio (de tipo A, NS, MX, CNAME, etc.). Escribe el nombre del registro (en nuestro caso, el nombre del alias del estilo static.midominio.com), el tipo (CNAME) y el valor (el “Domain name” que apuntaste cuando creaste la distribución en el CloudFront).
Las credenciales de seguridad de Amazon S3
En WordPress lo mejor es gestionar el manejo del CloudFront con un plugin del tipo W3 Total Cache
. En un próximo post veremos cómo se configura ese plugin y para ello se necesitarán las claves de acceso al S3 de Amazon.
Dichas credenciales de acceso se encuentan en el enlace “Credenciales de seguridad” del apartado “Gestionar” al pie de la página home aws.amazon.com
. En la pestaña “Claves de acceso” apunta el Nº de la clave de acceso y la clave de acceso secreta.
Test de prueba
Prueba que todo funciona correctamente subiendo un archivo cualquiera con el botón “Upload” desde la pestaña S3 de la consola de gestión de AWS
.
Subir las imágenes a Amazon S3
Ahora solo resta subir todas las imágenes de tu blog al S3 de Amazon y modificar todas las referencias existentes a sus URLs por las nuevas de Amazon.
Continuará…
Un arduo trabajo si no fuese por el plugin W3 Total Cache. Lo vemos en el próximo post, aquí en Blogpocket.