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.
{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/
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.
*
). 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é.