Rápido (BYOCDN)

Esta configuración enruta el tráfico auténtico (solicitudes de bots de IA y agentes de usuario LLM) al servicio back-end de Edge Optimize (live.edgeoptimize.net). Los visitantes humanos y los bots de SEO se siguen sirviendo desde su origen como de costumbre. Para probar la configuración, una vez completada la instalación, busque el encabezado x-edgeoptimize-request-id en la respuesta.

Requisitos previos

Antes de configurar las reglas de VCL de Fastly, asegúrese de lo siguiente:

  • Acceso a Fastly para su dominio.
  • Una clave de API de Edge Optimize recuperada de la interfaz de usuario de LLM Optimizer. Para ver los pasos, consulte Recuperar las claves de API.
  • (Opcional) Para probar el enrutamiento de ensayo, consulte Clave de API de ensayo.

Configuración

Agregue los tres fragmentos de VCL siguientes al servicio Fastly. Estos fragmentos administran el enrutamiento de solicitudes auténticas a Edge Optimize, la separación de claves de caché y la conmutación por error al origen predeterminado.

VCL de Fastly

Añadir fragmentos de VCL

fragmento vcl_recv

unset req.http.x-edgeoptimize-url;
unset req.http.x-edgeoptimize-config;
unset req.http.x-edgeoptimize-api-key;
unset req.http.x-edgeoptimize-fetcher-key; # Optional (required only in case of WAF)

if (!req.http.x-edgeoptimize-request
    && req.http.user-agent ~ "(?i)(AdobeEdgeOptimize-AI|ChatGPT-User|GPTBot|OAI-SearchBot|PerplexityBot|Perplexity-User)") {
  set req.http.x-forwarded-host = req.http.host; # required for identifying the original host
  set req.http.x-edgeoptimize-url = req.url; # required for identifying the original url
  set req.http.x-edgeoptimize-config = "LLMCLIENT=TRUE;"; # required for cache key
  set req.http.x-edgeoptimize-api-key = "<YOUR API KEY>"; # required for identifying the client
  set req.http.x-edgeoptimize-fetcher-key = "<YOUR FETCHER KEY>"; # Optional (required only in case of WAF)
  set req.backend = F_EDGE_OPTIMIZE;
}

fragmento vcl_hash

if (req.http.x-edgeoptimize-config) {
  set req.hash += "edge-optimize";
  set req.hash += req.http.x-edgeoptimize-config;
}

fragmento vcl_deliver

if (req.http.x-edgeoptimize-config && resp.status >= 400) {
  set req.http.x-edgeoptimize-request = "failover";
  set req.backend = F_Default_Origin;
  restart;
}

if (!req.http.x-edgeoptimize-config && req.http.x-edgeoptimize-request == "failover") {
  set resp.http.x-edgeoptimize-fo = "1";
}

Conmutación por error

El fragmento vcl_deliver administra la conmutación por error automáticamente. Si Edge Optimize devuelve un error 4XX o 5XX, la solicitud se reinicia y se redirige de nuevo al origen predeterminado para que el usuario final siga recibiendo una respuesta. Las respuestas de conmutación por error incluyen el encabezado x-edgeoptimize-fo: 1.

Escenario
Comportamiento
Edge Optimize devuelve 2XX
La respuesta optimizada se sirve al cliente.
Edge Optimize devuelve 4XX o 5XX
La solicitud se reinicia y se sirve desde el origen predeterminado.
Respuesta de conmutación por error
Incluye el encabezado x-edgeoptimize-fo: 1.

Permitir la optimización en Edge mediante reglas de firewall (opcional)

Si su CDN utiliza un WAF o un Bot Manager:

  • Lista de permitidos el agente de usuario *AdobeEdgeOptimize/1.0* en su WAF o Administrador de bots para que el servicio Optimizar en Edge pueda recuperar el contenido de origen.

  • Si el firewall requiere una verificación adicional más allá del agente de usuario, genere un secreto (por ejemplo, openssl rand -hex 32) y:

    • Agregue x-edgeoptimize-fetcher-key con el secreto en sus reglas de enrutamiento junto con los otros x-edgeoptimize-* encabezados.
    • Agregue una regla de WAF o Bot Manager para permitir solicitudes en las que x-edgeoptimize-fetcher-key coincida con el mismo secreto.
  • Optimizar en Edge reenvía este encabezado tal cual: usted es el propietario del ciclo de vida completo de la clave.

Verificar la configuración

Una vez completada la configuración, compruebe que el tráfico de bots se enrute a Edge Optimize y que el tráfico humano no se vea afectado.

1. Probar el tráfico de bots (debe optimizarse)

Simule una solicitud de bot de IA con un user-agent auténtico:

curl -svo /dev/null https://www.example.com/page.html \
  --header "user-agent: chatgpt-user"

Una respuesta correcta incluye el encabezado x-edgeoptimize-request-id, que confirma que la solicitud se enrutó a través de Edge Optimize:

< HTTP/2 200
< x-edgeoptimize-request-id: 50fce12d-0519-4fc6-af78-d928785c1b85

2. Probar el tráfico humano (NO debería verse afectado)

Simule una solicitud normal de explorador humano:

curl -svo /dev/null https://www.example.com/page.html \
  --header "user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36"

La respuesta no debe contener el encabezado x-edgeoptimize-request-id. El contenido de la página y el tiempo de respuesta deben ser idénticos al de antes de habilitar Optimizar en Edge.

3. Cómo diferenciar los dos escenarios

Encabezado
Tráfico de bots (optimizado)
Tráfico humano (no afectado)
x-edgeoptimize-request-id
Presente: contiene un ID de solicitud único.
Ausente
x-edgeoptimize-fo
Solo está presente si se produjo la conmutación por error (valor: 1)
Ausente

El estado del enrutamiento de tráfico también se puede comprobar en la interfaz de usuario de LLM Optimizer. Vaya a Configuración del cliente y seleccione la pestaña Configuración de CDN.

Implementar optimizaciones en agentes de IA — completado

Para obtener más información sobre Optimizar en Edge, incluidas las oportunidades disponibles, los flujos de trabajo de optimización automática y las preguntas frecuentes, vuelve a Optimizar en la descripción general de Edge.

recommendation-more-help
llm-optimizer-help-main-toc