

# Tutorial: configuración de un sitio web estático en Amazon S3
<a name="HostingWebsiteOnS3Setup"></a>

**importante**  
Amazon S3 aplica ahora el cifrado del servidor con claves administradas por Amazon S3 (SSE-S3) como el nivel básico de cifrado para cada bucket de Amazon S3. Desde el 5 de enero de 2023, todas las cargas de objetos nuevos a Amazon S3 se cifran automáticamente sin costo adicional y sin afectar al rendimiento. El estado de cifrado automático para la configuración de cifrado predeterminada del bucket de S3 y para cargas de objetos nuevos está disponible en registros de CloudTrail, inventario de S3, Lente de almacenamiento de S3, la consola de Amazon S3 y como encabezado de respuesta a la API de Amazon S3 adicional en la AWS CLI y los AWS SDK. Para obtener más información, consulte [Preguntas frecuentes del cifrado predeterminado](https://docs.aws.amazon.com/AmazonS3/latest/userguide/default-encryption-faq.html).

Puede configurar un bucket de Amazon S3 para que funcione como un sitio web. En este ejemplo se muestran los pasos para el alojamiento de un sitio web en Amazon S3.

**importante**  
Para el siguiente tutorial hay que desactivar la opción Bloqueo de acceso público. Le recomendamos que deje activada la opción Bloqueo de acceso público. Si desea conservar las cuatro configuraciones de Bloqueo de acceso público activadas y alojar un sitio web estático, puede utilizar el control de acceso de origen (OAC) de Amazon CloudFront. Amazon CloudFront proporciona las capacidades necesarias para configurar un sitio web estático seguro. Los sitios web estáticos de Amazon S3 solo admiten puntos de conexión HTTP. Amazon CloudFront utiliza el almacenamiento duradero de Amazon S3 a la vez que proporciona encabezados de seguridad adicionales, como HTTPS. HTTPS agrega seguridad al cifrar una solicitud HTTP normal y proteger contra ataques cibernéticos comunes. Para obtener información, consulte [Introducción a un sitio web estático seguro](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/getting-started-secure-static-website-cloudformation-template.html) en la *guía para desarrolladores de Amazon CloudFront*. 

**Topics**
+ [Paso 1: crear un bucket](#step1-create-bucket-config-as-website)
+ [Paso 2: habilitar el alojamiento de un sitio web estático](#step2-create-bucket-config-as-website)
+ [Paso 3: editar la configuración de bloqueo de acceso público](#step3-edit-block-public-access)
+ [Paso 4: agregar una política de bucket para que el contenido del bucket sea público](#step4-add-bucket-policy-make-content-public)
+ [Paso 5: configurar un documento de índice](#step5-upload-index-doc)
+ [Paso 6: configurar un documento de error](#step6-upload-error-doc)
+ [Paso 7: probar el punto de conexión del sitio web](#step7-test-web-site)
+ [Paso 8: eliminar](#getting-started-cleanup-s3-website-overview)

## Paso 1: crear un bucket
<a name="step1-create-bucket-config-as-website"></a>

Las siguientes instrucciones proporcionan información general sobre cómo crear los buckets para el alojamiento de sitios web. Para obtener instrucciones detalladas paso a paso sobre la creación de un bucket, consulte [Creación de un bucket de uso general](create-bucket-overview.md).

**Para crear un bucket**

1. Inicie sesión en la Consola de administración de AWS y abra la consola de Amazon S3 en [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. Elija **Create bucket (Crear bucket)**.

1. Introduzca el **Bucket name** (Nombre del bucket) (por ejemplo: **example.com**).

1. Elija la región en la que desea crear el bucket. 

   Elija una región que esté cercana geográficamente para minimizar la latencia y los costos, o para cumplir los requisitos normativos. La región que elija determina el punto de conexión de sitio web de Amazon S3. Para obtener más información, consulte [Puntos de enlace de sitio web](WebsiteEndpoints.md).

1. Para aceptar la configuración predeterminada y crear el bucket, elija **Create (Crear)**.

## Paso 2: habilitar el alojamiento de un sitio web estático
<a name="step2-create-bucket-config-as-website"></a>

Después de crear un bucket, puede habilitar el alojamiento de sitios web estático para su bucket. Puede crear un nuevo bucket o utilizar un bucket existente.

**Para habilitar el alojamiento estático de sitios web**

1. Inicie sesión en la Consola de administración de AWS y abra la consola de Amazon S3 en [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. En el panel de navegación izquierdo, elija **Buckets de uso general**.

1. En la lista de buckets, seleccione el nombre del bucket para el que desea habilitar el alojamiento de sitios web estáticos.

1. Seleccione **Propiedades**.

1. Elija **Alojamiento de sitios web estáticos** y luego **Editar**.

1. Elija **Usar este bucket para alojar un sitio web**. 

1. En **Alojamiento de sitios web estáticos**, elija **Habilitar**.

1. En **Documento de índice**, escriba el nombre de archivo del documento de índice, normalmente `index.html`. 

   El nombre del documento de índice distingue entre mayúsculas y minúsculas y debe coincidir exactamente con el nombre del archivo del documento de índice HTML que tiene previsto cargar en el bucket de S3. Al configurar un bucket para el alojamiento de sitios web, debe especificar un documento de índice. Amazon S3 devuelve este documento de índice cuando se reciben solicitudes en el dominio raíz o en cualquiera de las subcarpetas. Para obtener más información, consulte [Configurar un documento de índice](IndexDocumentSupport.md).

1. Si desea proporcionar su propio documento de error personalizado para los errores de clase 4XX, escriba el nombre de archivo del documento de error personalizado en **Documento de error**. 

   El nombre del documento de error distingue entre mayúsculas y minúsculas y debe coincidir exactamente con el nombre del archivo del documento de error HTML que tiene previsto cargar en el bucket de S3. Si no especifica un documento de error personalizado y se produce un error, Amazon S3 devuelve un documento de error HTML predeterminado. Para obtener más información, consulte [Configurar un documento de error personalizado](CustomErrorDocSupport.md).

1. (Opcional) Si desea especificar reglas de redireccionamiento avanzadas, en **Reglas de redireccionamiento**, especifique JSON para describir las reglas.

   Por ejemplo, puede dirigir condicionalmente las solicitudes según nombres de clave de objeto o prefijos específicos en la solicitud. Para obtener más información, consulte [Configurar reglas de redireccionamiento para utilizar redireccionamiento condicional avanzado](how-to-page-redirect.md#advanced-conditional-redirects).

1. Elija **Guardar cambios**.

   Amazon S3 permite activar el alojamiento de sitios web estáticos para su bucket. En la parte inferior de la página, en **Alojamiento de sitios web estáticos**, verá el punto de conexión del sitio web para su bucket.

1. En **Alojamiento de sitios web estáticos**, anote el valor de **Punto de conexión**.

   **Punto de conexión** es el punto de conexión del sitio web de Amazon S3 para el bucket. Cuando termine de configurar el bucket como un sitio web estático, puede utilizar este punto de conexión para probar el sitio web.

## Paso 3: editar la configuración de bloqueo de acceso público
<a name="step3-edit-block-public-access"></a>

De forma predeterminada, Amazon S3 bloquea el acceso público a su cuenta y sus buckets. Si desea utilizar un bucket para alojar un sitio web estático, puede utilizar estos pasos para editar la configuración de bloqueo de acceso público. 

**aviso**  
Antes de completar estos pasos, consulte [Bloquear el acceso público a su almacenamiento de Amazon S3](access-control-block-public-access.md) para asegurarse de que comprende y acepta los riesgos que implica permitir el acceso público. Cuando desactiva la configuración de acceso público de bloqueo para que el bucket sea público, cualquier usuario de Internet puede acceder al bucket. Le recomendamos que bloquee todo el acceso público a sus buckets.

1. Abra la consola de Amazon S3 en [https://console.aws.amazon.com/s3](https://console.aws.amazon.com/s3/).

1. Elija el nombre del bucket que ha configurado como sitio web estático.

1. Elija **Permisos**.

1. En **Bloquear acceso público (configuración de bucket)**, elija **Editar**.

1. Desactive **Bloquear *todo el* acceso público** y elija **Guardar cambios**.  
![La consola de Amazon S3, que muestra la configuración del bucket de acceso público al bloque.](http://docs.aws.amazon.com/es_es/AmazonS3/latest/userguide/images/edit-public-access-clear.png)

   Amazon S3 desactiva la configuración de Bloqueo de acceso público para su bucket. Para crear un sitio web público y estático, es posible que también tenga que [editar la configuración de Bloqueo de acceso público](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/block-public-access-account.html) para su cuenta antes de agregar una política de bucket. Si la configuración de Bloqueo de acceso público de su cuenta está activada actualmente, verá una nota en **Bloquear acceso público (configuración del bucket)**.

## Paso 4: agregar una política de bucket para que el contenido del bucket sea público
<a name="step4-add-bucket-policy-make-content-public"></a>

Después de editar la configuración de acceso público de bloques de S3, debe agregar una política de bucket para garantizar el acceso de lectura público a su bucket. Cuando concede permiso de lectura público, cualquier persona de Internet puede acceder a su bucket.

**importante**  
La política que se muestra a continuación es solo un ejemplo y permite acceso completo al contenido del bucket. Antes de continuar con este paso, revise [¿Cómo puedo proteger los archivos en mi bucket de Amazon S3?](https://aws.amazon.com/premiumsupport/knowledge-center/secure-s3-resources/) para asegurarse de que comprende las prácticas recomendadas para proteger los archivos en el bucket de S3 y los riesgos que implica la concesión de acceso público.

1. En **Buckets**, elija el nombre del bucket.

1. Elija **Permisos**.

1. En **Política de bucket**, elija **Editar**.

1. Para conceder acceso público de lectura a su sitio web, copie la siguiente política de bucket y péguela en el **Editor de políticas de bucket**.

   ```
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "PublicReadGetObject",
               "Effect": "Allow",
               "Principal": "*",
               "Action": [
                   "s3:GetObject"
               ],
               "Resource": [
                   "arn:aws:s3:::{{Bucket-Name}}/*"
               ]
           }
       ]
   }
   ```

1. Actualice el valor de `Resource` para el nombre de su bucket.

   En la política de bucket de ejemplo anterior, {{Bucket-Name}} es un marcador de posición para el nombre del bucket. Para utilizar esta política de bucket con su propio bucket, debe actualizar este nombre para que coincida con su nombre de bucket.

1. Elija **Guardar cambios**.

   Aparecerá un mensaje que indicará que la política de bucket se ha agregado correctamente.

   Si ve un error que indica `Policy has invalid resource`, confirme que el nombre del bucket en la política del bucket coincide con el nombre de su bucket. Para obtener información acerca de cómo agregar una política de bucket, consulte [¿Cómo añado una política de bucket de S3?](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/add-bucket-policy.html)

   Si recibe un mensaje de error y no puede guardar la política de bucket, compruebe la configuración del bloqueo de acceso público para la cuenta y el bucket para confirmar que permite acceso público al bucket.

## Paso 5: configurar un documento de índice
<a name="step5-upload-index-doc"></a>

Cuando habilite el alojamiento de sitio web estático para su bucket, escriba el nombre del documento de índice (por ejemplo: )., **index.html**). Después de habilitar el alojamiento de sitio web estático para el bucket, cargue un archivo HTML con el nombre de este documento de índice en el bucket.

**Para configurar el documento de índice**

1. Cree un archivo `index.html`.

   Si no tiene un archivo `index.html`, puede usar el siguiente HTML para crear uno:

   ```
   <html xmlns="http://www.w3.org/1999/xhtml" >
   <head>
       <title>My Website Home Page</title>
   </head>
   <body>
     <h1>Welcome to my website</h1>
     <p>Now hosted on Amazon S3!</p>
   </body>
   </html>
   ```

1. Guarde el archivo de índice localmente.

   El nombre del archivo de documento de índice debe coincidir exactamente con el nombre del documento de índice que especifique en el cuadro de diálogo **Alojamiento de sitio web estático**. El nombre del documento de índice distingue entre mayúsculas y minúsculas. Por ejemplo, si escribe `index.html` en el nombre del **Documento de índice** en el cuadro de diálogo **Alojamiento de sitios web estáticos**, el nombre del archivo de documento de índice también debe ser `index.html` y no `Index.html`.

1. Inicie sesión en la Consola de administración de AWS y abra la consola de Amazon S3 en [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. En el panel de navegación izquierdo, elija **Buckets de uso general**.

1. En la lista de buckets, elija el nombre del bucket que desea utilizar para alojar un sitio web estático.

1. Habilite el alojamiento de sitios web estáticos para su bucket e introduzca el nombre exacto del documento de índice (por ejemplo: )., `index.html`). Para obtener más información, consulte [Habilitar el alojamiento de sitios web](EnableWebsiteHosting.md).

   Después de habilitar el alojamiento estático del sitio web, continúe con el paso 6. 

1. Para cargar el documento de índice en el bucket, realice una de las siguientes acciones:
   + Arrastre y suelte el archivo de índice en la lista de buckets de la consola.
   + Elija **Cargar** y siga las instrucciones para elegir y cargar el archivo de índice.

   Para obtener instrucciones paso a paso, consulte [Carga de objetos](upload-objects.md).

1. (Opcional) Cargue otros contenidos del sitio web en su bucket.

## Paso 6: configurar un documento de error
<a name="step6-upload-error-doc"></a>

Cuando habilite el alojamiento de sitios webs estáticos para el bucket, escriba el nombre del documento de error (por ejemplo: )., **404.html**). Después de habilitar el alojamiento de sitios web estáticos para el bucket, cargue un archivo HTML con el nombre de este documento de error en el bucket.

**Para configurar un documento de error,**

1. Cree un documento de error, por ejemplo `404.html`.

1. Guarde el archivo de documento de error localmente.

   El nombre del documento de error distingue mayúsculas y minúsculas y debe coincidir exactamente con el nombre que escriba al habilitar el alojamiento de sitios web estáticos. Por ejemplo, si escribe `404.html` en el nombre del **Documento de error** en el cuadro de diálogo **Alojamiento de sitios web estáticos**, el nombre del archivo del documento de error también debe ser `404.html`.

1. Inicie sesión en la Consola de administración de AWS y abra la consola de Amazon S3 en [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. En el panel de navegación izquierdo, elija **Buckets de uso general**.

1. En la lista de buckets, elija el nombre del bucket que desea utilizar para alojar un sitio web estático.

1. Habilite el alojamiento de sitios web estáticos para su bucket y escriba el nombre exacto del documento de error (por ejemplo: )., `404.html`). Para obtener más información, consulte [Habilitar el alojamiento de sitios web](EnableWebsiteHosting.md) y [Configurar un documento de error personalizado](CustomErrorDocSupport.md).

   Después de habilitar el alojamiento estático del sitio web, continúe con el paso 6. 

1. Para cargar el documento de error en el bucket, realice una de las siguientes acciones:
   + Arrastre y suelte el archivo del documento de error a la lista de buckets de la consola.
   + Elija **Cargar** y siga las instrucciones para elegir y cargar el archivo de índice.

   Para obtener instrucciones paso a paso, consulte [Carga de objetos](upload-objects.md).

## Paso 7: probar el punto de conexión del sitio web
<a name="step7-test-web-site"></a>

Después de configurar el alojamiento de sitios web estáticos para el bucket, puede probar el punto de conexión del sitio web.

**nota**  
Amazon S3 no admite el acceso HTTPS al sitio web. Si desea usar HTTPS, puede emplear Amazon CloudFront para atender a un sitio web estático alojado en Amazon S3.  
Para obtener más información, consulte [Cómo usar CloudFront para dar servicio a un sitio web estático alojado en Amazon S3](https://aws.amazon.com/premiumsupport/knowledge-center/cloudfront-serve-static-website/) y [Requerir HTTPS para la comunicación entre lectores y CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-viewers-to-cloudfront.html).

1. En **Buckets**, elija el nombre del bucket.

1. Seleccione **Properties (Propiedades)**.

1. En la parte inferior de la página, en **Static website hosting (Alojamiento de sitios web estáticos)**, elija el **punto de conexión del sitio web del bucket**.

   El documento de índice se abre en una ventana independiente del explorador.

Ahora puede alojar un sitio web en Amazon S3. Este sitio web está disponible en el punto de conexión del sitio web de Amazon S3. Sin embargo, es posible que tenga un dominio, como `example.com`, que desee utilizar para distribuir el contenido del sitio web creado. Es posible que también desee utilizar el soporte para dominio raíz de Amazon S3 para distribuir las solicitudes para `http://www.example.com` y `http://example.com`. Esto requiere pasos adicionales. Para ver un ejemplo, consulte [Tutorial: Configuración de un sitio web estático mediante un dominio personalizado registrado con Route 53](website-hosting-custom-domain-walkthrough.md). 

## Paso 8: eliminar
<a name="getting-started-cleanup-s3-website-overview"></a>

Si creó un sitio web estático solo como parte de un ejercicio de aprendizaje, elimine los recursos de AWS que asignó para dejar de acumular cargos. Después de que haya eliminado los recursos de AWS, el sitio web ya no estará disponible. Para obtener más información, consulte [Eliminación de un bucket de uso general](delete-bucket.md).