Configuración de Amazon Web Service (AWS) CloudFront

Las siguientes capturas de pantalla ilustran cómo configurar AWS CloudFront para que entregue contenido desde un origen de AEM. La configuración esencial está marcada con un círculo rojo.

​# Crear una distribución de CloudFront

​# Configuración del origen

Usar main--sitename--orgname.aem.live como dominio de origen.

Añada los siguientes encabezados personalizados:

  • X-Forwarded-Host: su nombre de dominio
  • X-BYO-CDN-Type: cloudfront

Si ha configurado correctamente la invalidación de inserción para su proyecto, también debe agregar el siguiente encabezado personalizado:

  • X-Push-Invalidation: enabled

​# Comportamiento de caché

Mantenga la configuración predeterminada aquí.

Clave de caché y solicitudes de origen

Haga clic en "crear política de caché"

Crear directiva de caché

Establezca TTL predeterminado en 300 segundos.

En "configuración de clave de caché", mantenga los valores predeterminados:

  • Encabezados: ninguno
  • Cookies: ninguna
  • Soporte de compresión: gzip, brotli

Y reemplace lo siguiente:

  • Cadenas de consulta: incluya las siguientes cadenas de consulta

    • width
    • height
    • format
    • optimize
    • limit
    • offset
    • sheet

Cierre la pestaña del explorador y vuelva a la pantalla anterior. En esta pantalla, haga clic en "Crear política de solicitud de origen".

Crear política de solicitud de origen

Mantener la configuración predeterminada:

  • Encabezados: ninguno
  • Cookies: ninguna

Y reemplace lo siguiente:

  • Cadenas de consulta: incluya las siguientes cadenas de consulta

    • width
    • height
    • format
    • optimize
    • limit
    • offset
    • sheet

A continuación, haga clic en crear y cierre la pestaña para volver a la pantalla anterior.

Aplicar directiva de caché y directiva de solicitud de origen

Después de volver a las propiedades de distribución, haga clic en los botones de recarga junto a los desplegables Política de caché y Política de solicitud de origen, para que se muestren las dos políticas recién creadas. A continuación, seleccione las nuevas directivas tanto para la directiva Caché como para la directiva Solicitud de origen.

Crear distribución

Seleccione si desea activar un cortafuegos de aplicación web (WAF). El origen de AEM no requiere WAF y no se requiere ni recomienda el uso de WAF para el origen de AEM.

Desplácese hasta el final de la página y haga clic en "crear distribución". Necesitamos volver a la configuración más tarde, así que recuerde el ID de su distribución.

​# Crear función para eliminar encabezados Age y X-Robots-Tag

En la barra lateral de Cloudfront, seleccione "Funciones" y haga clic en "Crear función".

Escriba un nombre para la función (p. ej. stripHeaders), una descripción opcional y haga clic en "Crear función":

Reemplace el código de la función con el siguiente fragmento y haga clic en "Guardar cambios":

function handler(event) {
    const response = event.response;
    const request = event.request;
    const headers = response.headers;

    // Strip age header
    delete headers['age'];

    // Check if the request URL does not end with '.plain.html'
    if (!request.uri.endsWith('.plain.html')) {
        delete headers['x-robots-tag'];
    }

    return response;
}

Seleccione la pestaña "Publicar" y haga clic en "Publicar función":

Finalmente, asocie la función a la distribución desplazándose hacia abajo hasta "Distribuciones asociadas" y haga clic en "Agregar asociación".


En el siguiente cuadro de diálogo, seleccione:

  • Distribution: el ID de la nueva distribución
  • Tipo de evento: respuesta del visor
  • Comportamiento de caché: predeterminado

Finalmente, haga clic en "agregar asociación"

Eso es todo (más o menos). Pruebe la distribución en un entorno de ensayo.

Opcional: Autenticar solicitudes de origen

Si ha habilitado la autenticación de sitio basada en tokens, vuelva a Cloudfront → Distributions → <su distribución> → Origins → <su origen AEM> → Edit

En "Agregar encabezado personalizado", seleccione "agregar encabezado" y cree un encabezado Authorization con el valor token <your-auth-token>. Reemplace <your-auth-token> con el valor de token creado mediante autenticación de sitio basada en token (comienza con hlx_) como valor del encabezado.

Esto garantizará que todas las solicitudes de la CDN de AWS CloudFront a su origen de AEM utilicen la autorización correcta.

Configurar la invalidación push para AWS Cloudfront

La invalidación push purga automáticamente el contenido en la CDN de producción del cliente (p. ej. www.yourdomain.com), cada vez que un autor publica cambios de contenido.

El contenido se purga mediante la dirección URL y la clave/etiqueta de caché.

La invalidación push se habilita agregando propiedades específicas a la configuración del proyecto (un libro de Excel denominado .helix/config.xlsx en Sharepoint o una hoja de Google denominada .helix/config en Google Drive).

NB: CloudFront NO admite la purga por clave o etiqueta de caché. Purgar por clave/etiqueta de caché siempre almacena en déclencheur una purga de todo.

Propiedades de configuración:

key
valor
comentario
cdn.prod.host
<Production Host>
Nombre del host del sitio de producción, p. ej.,. www.yourdomain.com
cdn.prod.type
cloudfront
cdn.prod.distributionId
<Cloudfront Distribution ID>
cdn.prod.accessKeyId
<AWS Access key ID>
Credenciales de AWS
cdn.prod.secretAccessKey
<AWS Secret access key>
Credenciales de AWS

Para crear las credenciales de AWS:

En la consola AWS, abra el panel IAM y, a continuación, seleccione Políticas → Crear política:

En la siguiente pantalla, seleccione "CloudFront" como servicio y "CreateInvalidation" como acción; a continuación, haga clic en "Agregar ARN" para restringir los permisos a una sola distribución.

Introduzca su ID de distribución y haga clic en "Añadir ARN":

Continúe con "Siguiente: Etiquetas" y luego con "Siguiente: Revisar".

Introduzca un nombre para la nueva directiva, p. ej. "AEM&lt;YourSite>Invalidate" y haga clic en "Create policy":

En el panel de IAM, seleccione Usuarios → Crear usuario

Introduzca un nombre de usuario (por ejemplo, "Invalidador") y haga clic en Next:

En el panel "Establecer permisos", seleccione "Adjuntar directivas directamente" y luego seleccione la directiva recién creada ("AEM&lt;SuSitio>Invalidar" en nuestro ejemplo):

Continúe con el siguiente paso, haga clic en "Crear usuario" y termine en "Ver usuario":

Seleccione la pestaña "Credenciales de seguridad" y haga clic en "Crear clave de acceso":

Seleccione "Servicio de terceros", haga clic en la casilla de verificación y continúe con "Siguiente":

Finalmente, copie los valores Access key ID y Secret access key:

Puede validar las credenciales con esta herramienta.

recommendation-more-help
10a6ce9d-c5c5-48d9-8ce1-9797d2f0f3ec