Caché y purga
Configure la caché perimetral, la caché del navegador, las claves de caché y la caché negativa, y purgue por URL, comodín o todo el sitio.
La configuración de caché se encuentra en la pestaña Caché de la página de detalles de un sitio (/cdn/domains/<domain>/cache). Se aplica a todos los nombres de host del sitio. Haga clic en Guardar ajustes al final de la página después de realizar cambios. Para que el contenido nuevo se aplique inmediatamente, utilice Borrar caché en la esquina superior derecha.
Caché perimetral
| Configuración | Descripción |
|---|---|
| Caché edge | Automático: almacena en caché según los encabezados de respuesta del origen. Activar: almacenamiento en caché habilitado. Desactivar: no se almacena nada en la caché perimetral. |
| Servir caché caducada si falla el origen | Si el origen agota el tiempo de espera o devuelve 500/502/503/504, el nodo perimetral sirve la copia caducada de la caché en lugar de una página de error. Activado de forma predeterminada. |
| Modo de tiempo de caché | Cómo se calcula el tiempo de vida de la caché. Consulte la tabla siguiente. |
| Tiempo de caché (segundos) | El valor configurado que utiliza el modo de TTL. Los botones de acceso rápido establecen 1 hora, 1 día o 7 días. |
Modos de TTL de caché:
| Modo | Comportamiento |
|---|---|
| Seguir el origen o usar el valor predeterminado | Utiliza el tiempo de vida de los encabezados Cache-Control / Expires del origen. Si el origen no proporciona ninguno, utiliza el valor configurado. |
| Fijo | Ignora el origen y utiliza siempre el valor configurado. |
| Seguir el origen | Sigue estrictamente al origen. Si el origen no marca la respuesta como almacenable en caché, no se almacena. |
| Usar el mínimo / Usar el máximo | Utiliza el menor o el mayor entre el tiempo de vida del origen y el valor configurado. Si el origen no proporciona ninguno, utiliza el valor configurado. |
Caché por tipo de archivo
En Caché por tipo de archivo puede establecer un tiempo de vida por extensión, por ejemplo, 7 días para jpg,png,gif. El nodo perimetral lo aplica cuando la respuesta del origen no tiene un tiempo de vida explícito (sin max-age, s-maxage ni Expires). Si el origen establece uno, prevalece su valor.
Respuestas que nunca se almacenan en caché
Estas respuestas nunca entran en la caché perimetral, independientemente de la configuración:
- Respuestas del origen con
Cache-Control: no-storeoprivate - Respuestas que establecen una cookie (
Set-Cookie) - Respuestas
206 Partial Contenta solicitudes Range - Solicitudes con métodos distintos de GET y HEAD
Caché del navegador
Caché del navegador controla si el nodo perimetral añade un encabezado Cache-Control para los navegadores:
- Activar: para las respuestas que el nodo perimetral haya almacenado en caché, añade
Cache-Control: public, max-age=<edge TTL>si el origen no envióCache-Control. El TTL perimetral es el tiempo durante el que el propio nodo conserva la respuesta, por lo que el tiempo de vida del navegador coincide con el del nodo. - Automático o Desactivar: el nodo perimetral no añade encabezados de caché del navegador.
El Cache-Control del origen siempre se transmite al navegador sin cambios. El nodo perimetral nunca añade un encabezado de caché del navegador a ninguno de los siguientes casos:
- Respuestas que no haya almacenado en caché, como las de API dinámicas
- Solicitudes con métodos distintos de GET y HEAD
- Respuestas con estado 400 o superior
- Respuestas que establecen una cookie
Esto evita que el contenido dinámico quede retenido en las cachés de los navegadores.
La forma más fiable de dar a los recursos estáticos un tiempo de vida largo en el navegador es hacer que el origen envíe un Cache-Control: max-age=... explícito para ellos.
Clave de caché
La clave de caché determina qué solicitudes comparten una copia almacenada. La vista previa al final de la sección muestra los componentes de la clave con la configuración actual.
Modo de tratamiento de la cadena de consulta:
| Modo | Comportamiento | Ejemplo |
|---|---|---|
| Estándar | Conserva todos los parámetros de consulta tal como están | ?a=3 y ?a=4 se almacenan por separado |
| Ignorar | Ignora todos los parámetros de consulta | ?a=3 y ?a=4 comparten una copia |
| Ordenar | Conserva todos los parámetros, ordenados por nombre | ?b=2&a=1 y ?a=1&b=2 comparten una copia |
| Lista de permitidos | Conserva solo los parámetros indicados | id,page |
| Lista de bloqueo | Descarta los parámetros indicados | utm_source,utm_medium,ref |
Separe los nombres de los parámetros con comas.
También puede dividir la caché según estas dimensiones:
- Distinguir por tipo de dispositivo: copias separadas para móviles y equipos de escritorio.
- Distinguir por país: copias separadas por país o región del visitante.
- Distinguir por idioma: copias separadas por
Accept-Language. - Modo de host de la caché: qué nombre de host se incluye en la clave:
- Solicitud original: el Host solicitado por el visitante. Es el valor predeterminado.
- Tras la resolución: el nombre de host con el que coincidió el sitio.
- Cabecera Host: el Host utilizado para la solicitud al origen.
Cada dimensión adicional puede dividir una URL en varias copias en caché, lo que reduce la tasa de aciertos. Active solo las dimensiones que necesite.
Caché avanzada y caché negativa
| Configuración | Descripción |
|---|---|
| Caché por código de estado (caché negativa) | Un tiempo de vida de caché en segundos para códigos de estado específicos, como 404 o 301. Tiene prioridad sobre todas las demás opciones de TTL y evita que las respuestas de error lleguen al origen una y otra vez. |
| min_ttl / max_ttl | Un límite inferior y superior para el tiempo de vida final de la caché. 0 significa sin límite. |
| stale_if_error | Cuando falla el origen, sigue sirviendo contenido caducado durante esta cantidad de segundos. |
| No almacenar en caché si incluye Authorization | Las solicitudes con un encabezado Authorization omiten la caché y van al origen. |
| Respetar no-cache del cliente | Las solicitudes con Cache-Control: no-cache omiten la caché. |
| Cookie de sesión para omitir la caché | Las solicitudes que contienen cualquiera de las cookies indicadas, como session o token, omiten la caché. |
Protección del origen (Origin Shield)
Máximo de conexiones simultáneas al origen limita cuántas solicitudes de un sitio pueden estar en curso hacia el origen al mismo tiempo. 0 significa sin límite.
Por encima del límite, las acciones de Acciones por exceso (escalonadas) se aplican en este orden:
- cache_first: servir desde la caché.
- queue: esperar en una cola. Puede establecer la longitud de la cola y la espera máxima en milisegundos.
- challenge: mostrar una prueba de verificación humana.
- block: bloquear la solicitud y devolver el tiempo Retry-After que haya establecido.
Utilícelo para proteger orígenes con capacidad limitada.
Purgar la caché
Cambiar la configuración de caché no hace caducar el contenido ya almacenado. Para que el nodo perimetral obtenga contenido nuevo del origen:
- En la pestaña Caché, haga clic en Borrar caché en la esquina superior derecha. La lista Dominios y la pestaña Descripción general también permiten purgar todo el sitio con un clic.
- Elija un tipo de purga:
- Borrar toda la caché del sitio: elimina todo el contenido en caché del sitio.
- Purgar por URL: introduzca una URL por línea. Utilice una URL completa (
https://example.com/css/app.css) o una ruta (/css/app.css).
- Haga clic en Confirmar borrado.
Cómo funciona la coincidencia al purgar por URL:
- Con una cadena de consulta (por ejemplo,
/list?page=2): solo se purga la copia de esa combinación de parámetros. La consulta se normaliza con el modo de cadena de consulta del sitio antes de buscar la coincidencia. - Sin cadena de consulta (por ejemplo,
/list): se purgan todas las variantes de cadena de consulta de esa ruta. - Comodines: introduzca una sola línea que contenga
*para purgar por patrón, por ejemplo,https://example.com/static/*para todo el contenido de ese directorio. Si más de una línea contiene*, la solicitud se convierte en una purga de todo el sitio.
La purga se envía a todos los nodos perimetrales en segundo plano y normalmente se completa en segundos. Después, compruebe el encabezado de respuesta X-Cache-Status con curl -I. La primera solicitud debería mostrar MISS.
Justo después de purgar todo el sitio, todas las solicitudes llegan al origen, por lo que su carga aumenta considerablemente. Si solo ha cambiado unos pocos archivos, purgue esas URL.
Contenido relacionado
- Establezca tiempos de vida de caché o del navegador para rutas específicas: Reglas de página
- Compruebe la tasa de aciertos de caché: Registros y análisis