ir a pragma.co
Lecciones Academia Pragma

Cómo publicar un sitio a través de S3

por Daniel Agudelo, el 21 de octubre de 2019

 

como_publicar_sitio_s3

Amazon Simple Storage Service, conocido como Amazon S3, es un servicio de almacenamiento de objetos que ofrece alta disponibilidad, tolerancia a fallos, seguridad y alto rendimiento en el acceso a la información. Por otro lado, el modelo de costos es bastante flexible, lo que permite que sea una solución de almacenamiento ideal para usuarios de todos los tamaños, pues en S3 se cobra únicamente por el consumo, que se resume en el tamaño de los objetos que tengamos allí almacenados y la frecuencia con la que accedemos a ellos.

Además, S3 es ideal para múltiples casos de uso, pues no existe restricción en el tipo de objetos que allí pueden almacenarse, los cuales se respaldan por un conjunto de herramientas de control de acceso que provee Amazon Web Service (AWS) que garantizan la seguridad en el acceso a esta información.

Una de las funcionalidades más destacadas de este servicio es que, si los objetos que almacenamos allí definen un sitio web con contenido estático, podemos utilizar S3 para publicar este sitio web, sin la necesidad de instalar y configurar un servidor web independiente.

Veamos de qué se trata en esta guía paso a paso, en la que publicaremos nuestro sitio web en S3. Para esto, necesitaremos una cuenta de AWS con permisos sobre S3 y los servicios que configuraremos están incluidos dentro de la capa gratuita de AWS.

Esta guía la realizaremos en la región North Virginia (N. Virginia), que también es conocida como us-east-1. Así que, estando dentro de la consola web asociada a nuestra cuenta, el primer paso será verificar la región en la que estamos en la esquina superior derecha de la consola web. A continuación, ingresamos al servicio S3:

Publicar web S3  Amazon Web Service paso1

Una vez estemos dentro de la consola de administración de S3, crearemos un Bucket, que es la manera en la cual AWS agrupa los diferentes objetos que se almacenan en S3.

Publicar web S3 Amazon Web Service paso2

Para la creación del bucket debemos definir un nombre único dentro de todos los buckets que tiene AWS, que además no puede incluir mayúsculas y debe empezar y terminar con una letra o número. A continuación seleccionamos la región N. Virginia y finalmente seleccionamos el botón Create, aceptando las configuraciones por defecto en las demás etapas de creación del bucket. 

Publicar web S3 Amazon Web Service paso3

Una vez el bucket ha sido creado, podremos acceder a él y encontraremos un conjunto de pestañas en las que podremos cargar archivos al bucket y administrarlos. En este punto lo que haremos será cargar el archivo que define nuestro sitio web estático en html.

Aquí podrás encontrar el archivo con el que probaremos nuestro sitio web. Para cargarlo al bucket que acabamos de crear, selecciona el botón upload dentro de la pestaña Overview y lo arrastras a la ventana que te aparecerá a continuación y seleccionas nuevamente el botón upload dentro de esa nueva ventana.

Publicar web S3 Amazon Web Service paso4

Ahora, vamos a la pestaña Properties y allí seleccionamos la opción: Static website hosting, la cual estará en estado Disabled hasta este punto.

Publicar web S3 Amazon Web Service paso5

Una vez seleccionemos esta opción, se nos desplegará una nueva ventana en la cual debemos seleccionar la opción correspondiente a que el bucket almacenará una página web estática, al igual que indicar cuál será el archivo de índice para nuestra página, que en este caso es el archivo index.html que cargamos al bucket.

Finalmente, antes de seleccionar el botón Save, necesitamos copiar al portapapeles el valor asociado al endpoint, pues esta será la dirección con la cual accederemos a nuestro sitio web.

Publicar  web S3 Amazon Web Service paso6

Como prueba inicial, peguemos el valor del endpoint que acabamos de obtener en la barra de dirección de nuestro navegador web. Obtendremos el error que se muestra a continuación pues aún no hemos habilitado el acceso público a los objetos de nuestro bucket, que por defecto son privados.

Publicar web S3 Amazon Web Service paso7

Para habilitar el acceso público, vamos a la pestaña Permissions, seleccionamos la opción Block Public Access y a continuación seleccionamos el botón edit.

Publicar web S3 Amazon Web Service paso8

A continuación, eliminamos la selección de la opción Block all public access y seleccionamos el botón save. A continuación AWS nos pedirá confirmar la acción que estamos a punto de realizar escribiendo la palabra confirm en el campo de verificación.

Publicar web S3 Amazon Web Service paso9

Ahora, para hacer que nuestro archivo de índice sea público, regresamos a la pestaña Overview, allí seleccionamos nuestro archivo index.html y, luego de hacer scroll en el panel a la derecha que se despliega, seleccionamos la opción: Permissions.

Publicar web S3 Amazon Web Service paso10

Una vez estemos dentro de la configuración de permisos del objeto, iremos a la sección Public Access, y allí seleccionamos las opciones que se muestran a continuación:

Publicar web S3 Amazon Web Service paso11

Como prueba final, intentemos cargar de nuevo el sitio web utilizando el endopoint que registramos anteriormente. En este caso, obtendremos el siguiente resultado:

Publicar web S3 Amazon Web Service paso12

¡Felicitaciones! Hemos configurado correctamente nuestro sitio web en S3. Ahora, podrás acceder a él utilizando el endpoint que entrega S3, además, podrás subir nuevos archivos y reemplazar el archivo index.html por el índice particular de tu sitio web. Recuerda que para poder ver un archivo dentro del sitio web, este tendrá que se público, así que deberás configurar este acceso cómo lo hicimos con el archivo index.html.

Ahora, si deseas personalizar aún más tu sitio web, te recomiendo realizar un registro de dominio en Route 53 para que puedas obtener un nombre de dominio personalizado. Además, toda la configuración que realizamos de forma manual se puede automatizar utilizando CloudFormation.

Recuerda que todos los recursos que hemos creado están dentro de la capa gratuita de AWS, pero si deseas eliminarlos, bastará con seleccionar el bucket dentro de la raíz de S3 y seleccionar la opción delete.

Ebook Computación en la nube

Temas:Desarrollo de softwareComputación en la nube

Lecciones Pragma

Lecciones en Academia Pragma

Aquí encontrarás tutoriales técnicos para que apliques en temas de desarrollo de software, cloud, calidad en software y aplicaciones móviles. 

También puedes visitar nuestro Blog con contenido actual sobre Transformación Digital, Marketing, Conocimiento de Usuario y más. 

Blog

Suscríbete a la academia

Descarga la Guía para trabajar con ambientes IBM Websphere Portal