Almacenamiento en caché

Puede habilitar el almacenamiento en caché en el entorno de su proyecto de infraestructura en la nube. Si deshabilita el almacenamiento en caché, Adobe Commerce proporciona directamente los archivos.

NOTE
Los siguientes ejemplos de configuración de rutas utilizan plantillas de rutas con marcadores de posición. El marcador de posición {default} representa el dominio predeterminado configurado para el sitio. Si el proyecto tiene varios dominios, use el marcador de posición {all} para configurar el enrutamiento para el dominio predeterminado y todos los alias. Consulte Configurar rutas.

Configuración del almacenamiento en caché

Habilite el almacenamiento en caché para su aplicación configurando las reglas de caché en el archivo .magento/routes.yaml de la siguiente manera:

http://{default}/:
    type: upstream
    upstream: php:php
    cache:
        enabled: true
        headers: [ "Accept", "Accept-Language", "X-Language-Locale" ]
        cookies: ["*"]
        default_ttl: 60

Almacenamiento en caché basado en rutas

Habilite el almacenamiento en caché detallado configurando reglas de almacenamiento en caché para varias rutas por separado, como se muestra en el siguiente ejemplo:

http://{default}/:
    type: upstream
    upstream: php:php
    cache:
        enabled: true

http://{default}/path/:
    type: upstream
    upstream: php:php
    cache:
        enabled: false

http://{default}/path/more/:
    type: upstream
    upstream: php:php
    cache:
        enabled: true

El ejemplo anterior almacena en caché las rutas siguientes:

  • http://{default}/
  • http://{default}/path/more/
  • http://{default}/path/more/etc/

Y las siguientes rutas están no en la caché:

  • http://{default}/path/
  • http://{default}/path/etc/
NOTE
Se admiten expresiones regulares en las rutas no.

Duración de caché

La duración de la caché está determinada por el valor del encabezado de respuesta Cache-Control. Si no hay ningún encabezado Cache-Control en la respuesta, se utiliza la clave default_ttl.

Clave de caché

Para decidir cómo almacenar en caché una respuesta, Adobe Commerce crea una clave de caché que depende de varios factores y almacena la respuesta asociada a esta clave. Cuando una solicitud viene con la misma clave de caché, la respuesta se reutiliza. Su propósito es similar al del encabezado 🔗 HTTP Vary.

Los parámetros headers y cookies claves permiten cambiar esta clave de caché.

El valor predeterminado para estas claves es el siguiente:

cache:
    enabled: true
    headers: ["Accept-Language", "Accept"]
    cookies: ["*"]

Atributos de caché

enabled

Cuando se establece en true, habilite la caché para esta ruta. Cuando se establece en false, deshabilitar la caché para esta ruta.

headers

Define los valores de los que debe depender la clave de caché.

Por ejemplo, si la clave headers es la siguiente:

cache:
    enabled: true
    headers: ["Accept"]

A continuación, Adobe Commerce almacena en caché una respuesta diferente para cada valor del encabezado HTTP Accept.

cookies

La clave cookies define de qué valores debe depender la clave de caché.

Por ejemplo:

cache:
    enabled: true
    cookies: ["value"]

La clave de caché depende del valor de la cookie value en la solicitud.

Existe un caso especial si la clave cookies tiene el valor ["*"]. Este valor significa que cualquier solicitud con una cookie evita la caché. Este es el valor predeterminado.

NOTE
No se pueden utilizar caracteres comodín en el nombre de la cookie. Use un nombre de cookie preciso o combine todas las cookies con un asterisco (*). Por ejemplo, SESS* o ~SESS son actualmente valores no válidos.

Las cookies tienen las siguientes restricciones:

  • Puede establecer un máximo de 50 cookies en el sistema. De lo contrario, la aplicación genera una excepción Unable to send the cookie. Maximum number of cookies would be exceeded.
  • Un tamaño máximo de cookie es de 4096 bytes. De lo contrario, la aplicación genera una excepción Unable to send the cookie. Size of '%name' is %size bytes.

default_ttl

Si la respuesta no tiene un encabezado Cache-Control, se usa la clave default_ttl para definir la duración de la caché, en segundos. El valor predeterminado es 0, lo que significa que no se almacena nada en caché.

recommendation-more-help
05f2f56e-ac5d-4931-8cdb-764e60e16f26