Todos los productos
Search
Centro de documentos

CDN:Clave de caché personalizada

Última actualización: Sep 21, 2026

Las reglas de clave de caché personalizada generan claves de caché a partir de partes específicas de una solicitud HTTP, como el URI, los parámetros de la solicitud, los encabezados HTTP o las variables personalizadas. Esta función agrupa las solicitudes del mismo recurso en una clave de caché uniforme. De este modo, mejora la tasa de aciertos de la caché, reduce las recuperaciones de origen y disminuye los tiempos de respuesta y el consumo de ancho de banda.

Comparación y selección de funciones

  • Conflicto entre la clave de caché personalizada y Ignore parameters: si configura el filtrado de parámetros y una clave de caché personalizada al mismo tiempo, el filtrado de parámetros deja de ser válido.

  • La función de clave de caché personalizada ofrece un control más preciso, por lo que se recomienda usarla en lugar del filtrado de parámetros. A continuación se presenta una tabla que compara ambas funciones.

    Caso de uso

    Filtrado de parámetros

    Clave de caché personalizada

    Ignorar todos los parámetros de la solicitud en la clave de caché

    Establezca Ignore Parameters en Yes y deje vacío el campo Retain Specified Parameters.

    Agregue una regla de parámetro de solicitud. Establezca Action en Reserve y Parameter Name con un nombre de parámetro inexistente, por ejemplo, example-argument.

    Conservar solo el parámetro de solicitud key1 en la clave de caché

    Establezca Ignore Parameters en Yes y Retain Specified Parameters en key1.

    Agregue una regla de parámetro de solicitud. Establezca Action en Reserve y Parameter Name en key1.

    Quitar solo el parámetro de solicitud key1 de la clave de caché

    Establezca Remove Specified Parameters en key1.

    Agregue una regla de parámetro de solicitud. Establezca Action en Delete y Parameter Name en key1.

  • Reescritura de parámetros de origen: la función de clave de caché personalizada solo modifica la clave de caché y no cambia la URL de la solicitud de recuperación de origen. La solicitud de recuperación de origen permanece igual que la solicitud del cliente. Para modificar los parámetros de la solicitud enviados al origen, utilice Rewrite origin parameters.

  • Purga de caché: después de configurar una clave de caché personalizada, es posible que una tarea de purge by URL no logre coincidir con el contenido almacenado en la caché. Para asegurar que la purga sea exitosa, utilice como destino la clave de caché final generada por sus reglas.

Casos de uso

Una clave de caché es un identificador único para un archivo almacenado en la caché de un punto de presencia (POP) de CDN. Cada archivo en la caché tiene su propia clave de caché. De forma predeterminada, la clave de caché corresponde a la URL de la solicitud del cliente, incluidos todos los parámetros. La función de clave de caché personalizada no modifica la URL de la recuperación de origen, ya que únicamente cambia la clave de caché. Por lo tanto, la solicitud de recuperación de origen permanece igual que la solicitud original del cliente.

Nota

CDN está diseñado para acelerar recursos estáticos y no admite la aceleración dinámica de API. La función de clave de caché personalizada optimiza las estrategias de almacenamiento en caché para recursos estáticos. Por ejemplo, permite estandarizar los parámetros de la URL o diferenciar entre clientes, pero no es adecuada para escenarios de caché de API dinámicas. Si necesita acelerar contenido dinámico, considere utilizar Edge Security Acceleration (ESA).

Caso de uso 1: consolidar solicitudes

Las solicitudes de distintos clientes suelen incluir parámetros diferentes en la URL. Aunque varias solicitudes apunten al mismo archivo, los POP de CDN tratan cada variación de parámetros como un archivo distinto. Esto genera múltiples copias en la caché y recuperaciones de origen adicionales.Consolidate requests - before

Utilice reglas de clave de caché personalizada para unificar la clave de caché de estas solicitudes. Con esto reducirá la tasa de recuperación de origen.Consolidate requests - after

Caso de uso 2: diferenciar solicitudes

Cuando las solicitudes de los clientes comparten la misma URL, CDN las trata como peticiones para el mismo archivo. Sin embargo, es posible que necesite entregar contenido distinto según un campo client del encabezado HTTP que identifica diferentes sistemas cliente.Differentiate requests - before

En este caso, agregue el valor del encabezado client a la clave de caché mediante una regla de clave de caché personalizada. Así creará una clave de caché distinta para cada tipo de cliente.Differentiate requests - after

Procedimiento

  1. Inicie sesión en la consola de CDN.

  2. En la página Domain Names, busque el nombre de dominio de destino y haga clic en Manage dentro de la columna Actions.

  3. En el panel de navegación izquierdo, seleccione Cache.

  4. En la pestaña Custom Cache Key, haga clic en Create Rule para establecer los siguientes parámetros:

    Rule Condition

    Una condición de regla (Rule Condition) identifica las solicitudes mediante diversos parámetros para determinar si una configuración aplica a una petición específica. Cuando una regla utiliza una condición de regla, la prioridad de dicha condición define el orden de ejecución, no la configuración de prioridad de la función.

    • No utilizar: la clave de caché personalizada aplica a todas las solicitudes sin necesidad de una condición de regla.

    • Agregar o editar una condición de regla: gestione esta opción en Rules Engine. Para obtener más información, consulte Rule Conditions y Rules Engine.

    URIs

    Cuando el URI de una solicitud del cliente coincide con el Source URI de la configuración, el sistema lo reemplaza por el Final URI configurado para generar la clave de caché. Es posible configurar varias políticas de reemplazo de URI. Estas políticas se evalúan de forma secuencial de arriba hacia abajo. Una vez que coincide un Source URI, el sistema aplica el Final URI correspondiente y detiene la evaluación de las políticas restantes.

    • Source URI: URI que comienza con una barra diagonal (/) y no incluye el prefijo http:// ni el nombre de dominio. Se admiten expresiones regulares PCRE.

    • Final URI: URI que comienza con una barra diagonal (/) y no incluye el prefijo http:// ni el nombre de dominio.

    Request Parameter

    Las operaciones se aplican sobre los parámetros de la URL de la solicitud original. Puede ejecutar las operaciones Add, Delete, Modify y Reserve. El resultado se agrega a la clave de caché. Si configura varias operaciones, estas se ejecutan de forma secuencial de arriba hacia abajo.

    • Add: agrega un nuevo parámetro de solicitud a la clave de caché. Por ejemplo, si la URL original es http://image.example.com/cat.jpg y usted agrega el parámetro type=jpg, la clave de caché se convierte en http://image.example.com/cat.jpg?type=jpg.

    • Delete: elimina el parámetro especificado de la URL de la solicitud original al generar la clave de caché. Por ejemplo, si la URL original es http://image.example.com/cat.jpg?type=jpg y usted elimina el parámetro type, la clave de caché se convierte en http://image.example.com/cat.jpg.

    • Modify: cambia el valor de un parámetro específico en la URL de la solicitud original al generar la clave de caché. Por ejemplo, si la URL original es http://image.example.com/cat.jpg?type=jpg y usted cambia el parámetro a type=png, la clave de caché se convierte en http://image.example.com/cat.jpg?type=png.

    • Reserve: conserva únicamente los parámetros especificados de la URL de la solicitud original al generar la clave de caché. Todos los demás parámetros se eliminan. Por ejemplo, si la URL original es http://image.example.com/cat.jpg?type=jpg&path=image y usted conserva el parámetro type, la clave de caché se convierte en http://image.example.com/cat.jpg?type=jpg.

    HTTP Headers

    Agrega a la clave de caché los valores de los encabezados HTTP especificados de la solicitud original del cliente. Puede indicar varios nombres de encabezado separados por espacios. Los valores se añaden en el orden en que se especifican los encabezados. Por ejemplo, si la URL original es http://image.example.com/cat.jpg y la solicitud del cliente incluye el encabezado HTTP path:image, al establecer path en el campo HTTP Headers se genera la clave de caché http://image.example.com/cat.jpgimage.

    Custom Variables

    Añade valores de variables personalizadas a la clave de caché generada para mejorar la flexibilidad del almacenamiento en caché. Una variable personalizada consta de los siguientes parámetros:

    • Nombre de la variable: un nombre personalizado para la variable.

    • Origen: un valor de campo incluido en la solicitud del cliente. Están disponibles los siguientes tipos de origen:

      • Query String Parameter: la cadena de consulta en la URL de la solicitud.

      • Request Header: un encabezado de solicitud incluido en la petición del cliente.

      • Path: la ruta del recurso en la URL de la solicitud.

      • Scheme: el protocolo utilizado en la URL de la solicitud. Admite HTTP y HTTPS.

    • Campo de origen: obligatorio únicamente para los tipos de origen Query String Parameter, Request Header y Request Cookie. Especifique uno de los siguientes elementos:

      • El nombre de un parámetro específico en la cadena de consulta.

      • El nombre de un encabezado de solicitud específico.

    • Regla de coincidencia: una expresión regular que busca una cadena específica dentro del valor del campo de origen.

    • Expresión de variable: genera el valor final de la variable. Admite cadenas fijas y referencias a grupos de captura, como $1, que hace referencia al contenido capturado por el primer grupo entre paréntesis.

  5. Haga clic en OK.

Ejemplos de configuración

URIs

Las solicitudes para http://aliyundoc.com/a/b/image.jpg y http://aliyundoc.com/a/b/c/image.jpg se tratan como peticiones para el mismo archivo. La clave de caché de este archivo es http://aliyundoc.com/c/image.jpg. Configure las siguientes reglas de reescritura de URI: reescriba el Source URI /a/b al Final URI /c, y el Source URI /a/b/c al Final URI /c. Haga clic en + Add Source URI para agregar reglas de reescritura o en Delete para eliminar las reglas existentes.

Request Parameter

Una solicitud de cliente para http://aliyundoc.com/a/b/image.jpg?delete_par=1&modify_par=1 se procesa de la siguiente manera: se agrega add_par=1, se elimina delete_par y el valor de modify_par cambia a 2. La clave de caché resultante es http://aliyundoc.com/a/b/image.jpg?modify_par=2&add_par=1.

Importante

Si varias operaciones afectan al mismo parámetro de solicitud, el orden de prioridad es: Add > Delete > Reserve > Modify.

La acción Delete admite únicamente un nombre de parámetro. Para eliminar varios parámetros, haga clic en + Add Parameter Operation y agregue una regla Delete independiente por cada uno.

HTTP Headers

Los valores de los encabezados User-Agent y Accept-Language de una solicitud del cliente se agregan a la clave de caché. Por ejemplo, si una solicitud para http://aliyundoc.com/a/b/image.jpg contiene los encabezados User-Agent=Mozilla/5.0 (Linux; X11) y Accept-Language=en, la clave de caché será http://aliyundoc.com/a/b/image.jpgMozilla/5.0(Linux;X11)en. En el cuadro de texto HTTP Headers, introduzca los campos de encabezado de solicitud que desea incluir, como User-Agent y Accept-Language.

Custom Variables

Ejemplo 1

El nombre de la variable es language, el origen es Request Header, el campo de origen es Accept-Language, la regla de coincidencia es ([%w]+),([%w]+) y la expresión de variable es $1aa. Configure la variable personalizada de la siguiente manera: establezca Variable name en language, seleccione Request Header como Source, introduzca Accept-Language en Source field, introduzca ([%w]+),([%w]+) en Match rule e introduzca $1aa en Variable expression.

Un cliente solicita http://aliyundoc.com/a/b/image.jpg con el encabezado HTTP Accept-Language=en,ch. La regla de coincidencia captura en y lo asigna a $1 en la expresión de variable. Dicha expresión también añade aa, lo que da como resultado el valor de variable enaa con el alias language. Este valor se agrega a la URL para formar la clave de caché final: http://aliyundoc.com/a/b/image.jpgenaa.

Nota

El elemento $n en la expresión de variable hace referencia al contenido capturado por el n-ésimo grupo entre paréntesis de la regla de coincidencia. Por ejemplo, con Accept-Language=en,ch y la regla de coincidencia ([%w]+),([%w]+), se obtiene $1=en y $2=ch.

Ejemplo 2

El nombre de la variable es expired, el origen es Request Cookie, el campo de origen es a, la regla de coincidencia es [%w]+:(.*) y la expresión de variable es $1. Configure la variable personalizada de la siguiente manera:

  • Nombre de la variable: expired

  • Origen: Request Cookie

  • Campo de origen: a

  • Regla de coincidencia: [%w]+:(.*)

  • Expresión de variable: $1

Un cliente solicita http://aliyundoc.com/a/b/image.jpg con la cookie Cookie a=expired_time:12635187. La regla de coincidencia captura 12635187 y lo asigna a $1 en la expresión de variable, con el alias expired. Este valor se agrega a la URL para formar la clave de caché final: http://aliyundoc.com/a/b/image.jpg12635187.

Ejemplo 3

Este ejemplo combina una regla de URI con una variable personalizada.

URI:

Agrupe todas las solicitudes cuyo URI coincida con /abc/.*/abc en /abc. El Source URI es /abc/.*/abc y el Final URI es /abc.

Variables personalizadas:

El nombre de la variable es testname, el origen es Path, la regla de coincidencia es /abc/xyz/(.*) y la expresión de variable es $1. Realice la siguiente configuración: establezca Variable name en testname, Source en Path, Match rule en /abc/xyz/(.*) y Variable expression en $1.

Un cliente solicita http://aliyundoc.com/abc/xyz/abc/image.jpg. Según la configuración de URI, la clave de caché se reescribe a http://aliyundoc.com/abc/image.jpg. Después, con base en la configuración de la variable personalizada, la ruta de la solicitud original coincide con /abc/xyz/(.*). En este punto, a $1 se le asigna el valor abc/image.jpg y se añade a la clave de caché. Así se forma la clave de caché final: http://aliyundoc.com/abc/image.jpgabc/image.jpg. Este ejemplo demuestra cómo combinar reglas para implementar lógicas de almacenamiento en caché más complejas.

Si una variable personalizada de la clave de caché no coincide, la expresión de variable $1 no se agrega a la clave de caché.

Ejemplo 4

Este ejemplo combina una condición de regla con una variable personalizada para generar claves de caché distintas en las solicitudes provenientes de clientes móviles y de PC.

Condición de regla Mobile:

El encabezado User-Agent contiene cualquiera de las siguientes cadenas: *Mobile*,*Android*,*iPhone*,*ipad*.

Condición de regla PC:

El encabezado User-Agent no contiene ninguna de las siguientes cadenas: *Mobile*,*Android*,*iPhone*,*ipad*.

Clave de caché personalizada Mobile:

Para Rule Condition, seleccione Mobile. En Custom Variables, establezca Variable Name en Mobile, Source en Path, Matching Rule en / y Variable Expression en +mobile.

Clave de caché personalizada PC:

Para Rule Condition, seleccione PC. En Custom Variables, establezca Variable Name en PC, Source en Path, Matching Rule en / y Variable Expression en +pc.

Cuando un cliente solicita http://aliyundoc.com/image.jpg, la petición coincide con la regla de clave de caché personalizada Mobile o PC según el valor de User-Agent. La clave de caché final para los clientes móviles es http://aliyundoc.com/image.jpg+mobile, mientras que para las PC es http://aliyundoc.com/image.jpg+pc.