Configure reglas para agregar, modificar o eliminar encabezados HTTP en las solicitudes de origen que se envían desde los puntos de presencia (POP) de ESA hacia su servidor de origen.
Funcionamiento
Cuando una solicitud de cliente genera un fallo de caché, el POP de ESA reenvía una solicitud de origen a su servidor. Usted puede personalizar los encabezados HTTP de dicha solicitud de origen:
Notas
Momento en que las reglas surten efecto: Las reglas se aplican únicamente a las recuperaciones de origen (fallos de caché). Las solicitudes atendidas desde la caché de ESA no se ven afectadas.
Orden de ejecución: Las operaciones dentro de una regla se ejecutan de arriba hacia abajo. Cuando varias operaciones apuntan al mismo encabezado, la última es la que surte efecto. Por ejemplo, si la solicitud del cliente contiene
test:123, y la regla primero agregatest:321y luego eliminatest, el encabezadotestse quita de la solicitud de origen.
Procedimiento
Cuando llega una solicitud, ESA ejecuta las reglas coincidentes según el rule execution priority.
En la consola de ESA, elija Websites y haga clic en el sitio de destino en la columna Websites.
En el panel de navegación izquierdo, elija .
-
Haga clic en la pestaña Transform Rules, seleccione el elemento Modify request header y haga clic en ESA to Origin.

-
En el área Create Rule, configure los siguientes parámetros:
Parámetro
Descripción
Rule Name
Un nombre personalizado para la regla.
If requests match...
All Requests: se aplica a todas las solicitudes del sitio actual. Filtered Requests: se aplica solo al tráfico que coincide con una expresión personalizada.
Modify Request Header
La operación, el tipo y los detalles del encabezado. Consulte Operaciones y Restricciones.
Operaciones
|
Operación |
Tipo |
Comportamiento |
Ejemplo |
|
|
Add |
Static |
Agrega el encabezado a la solicitud de origen. Si ya existe un encabezado con el mismo nombre, el nuevo valor lo sobrescribe. |
Request Header Name: |
Request Header Value: |
|
Add |
Dynamic |
Agrega un encabezado cuyo valor se calcula a partir de un expression. |
Request Header Name: |
Request Header Value: |
|
Change |
Static |
Cambia el valor de un encabezado existente. Solo se aplica si la solicitud original contiene un encabezado con el nombre especificado. |
Request Header Name: |
Request Header Value: |
|
Change |
Dynamic |
Cambia el valor de un encabezado existente mediante un expression. Solo se aplica si la solicitud original contiene un encabezado con el nombre especificado. |
Request Header Name: |
Request Header Value: |
|
Delete |
N/A |
Elimina todos los encabezados que coinciden con el Request Header Name especificado, sin importar si hay duplicados. |
Request Header Name: |
Restricciones
No utilice un Request Header Name que comience con
ali-oAli-.Para especificar varios valores en Request Header Value, sepárelos con una coma (
,).La operación Delete funciona de la misma manera para los tipos Static y Dynamic.
La operación Change solo se aplica si la solicitud original ya contiene un encabezado con el nombre especificado.
Dentro de una misma regla, las operaciones se ejecutan de forma secuencial. Si distintas operaciones apuntan al mismo nombre de encabezado, la última sobrescribe a las anteriores.
Ejemplos
Complete los pasos 1 a 3 del Procedimiento para abrir el área Add Request Header Modification Rule.
Agregar la dirección IP de origen del cliente a todas las solicitudes
Configure estos parámetros:
Add Request Header Modification Rule:
add-client-ip-outIf requests match...: Seleccione All Requests.
-
Modify Request Header:
Type: Dynamic
Operation: Add
Request Header Name:
True-Client-IP-OUTRequest Header Value:
ip.src

Comprobación
Antes: El encabezado de solicitud no incluye la dirección IP del cliente.

Después: Se agrega el encabezado true-client-ip-out con la dirección IP del cliente.

Agregar el código de país para solicitudes fuera de China (Hong Kong)
Configure estos parámetros:
Rule Name:
add-client-countryIf requests match...: Seleccione Filtered Requests e introduzca
Country/Region does not equal China (Hong Kong). También puede editar la expresión directamente:(ip.geoip.country ne "HK")-
Modify Request Header:
Type: Dynamic
Operation: Add
Request Header Name:
IP-Country-CodeRequest Header Value:
ip.geoip.country

Comprobación
Antes: El encabezado de solicitud no incluye el código de país de la dirección IP del cliente.

Después: Se agrega el encabezado ip-country-code con el código de país del cliente.

Agregar el código de provincia para una ruta URI específica
Configure estos parámetros:
Rule Name:
add-client-provinceRule Name: Seleccione If requests match... e introduzca
URI Path equals /content. También puede editar la expresión directamente:(http.request.uri.path eq "/content")-
Filtered Requests:
Modify Request Header: Type
Dynamic: Operation
Add:
IP-Province-CodeRequest Header Name:
ip.src.subdivision_1_iso_code

Comprobación
Antes: El encabezado de solicitud no incluye el código de provincia de la dirección IP del cliente.

Después: Se agrega el encabezado ip-province-code con el código de provincia del cliente.

Referencias
El tema How ESA rules take effect aborda la prioridad de ejecución, el comportamiento de las reglas y el alcance de la configuración.