Cloudflare (BYOCDN)

Questa configurazione indirizza il traffico da IA agentica (richieste da bot IA e da agenti utente LLM) al servizio back-end Edge Optimize (live.edgeoptimize.net). Le persone e i bot SEO continuano a ricevere come al solito i contenuti trasmessi dalla tua origine. Per testare la configurazione, al termine cerca nella risposta l’intestazione x-edgeoptimize-request-id.

Prerequisiti

Prima configurare le regole di indirizzamento di un processo di lavoro Cloudflare, assicurati di:

  • disporre di un account Cloudflare con processi di lavoro abilitati nel tuo dominio.
  • avere acceso alle impostazioni DNS del tuo dominio in Cloudflare.
  • aver recuperato una chiave API di ottimizzazione edge dall’interfaccia di LLM Optimizer. Per i passaggi, consulta Recuperare le chiavi API.
  • (Facoltativo) Per verificare il routing dell’area di gestione temporanea, vedere Chiave API di gestione temporanea.

Come funziona l’indirizzamento

Una volta configurata correttamente, una richiesta al tuo dominio (ad esempio, www.example.com/page.html) proveniente da un agente utente agentico viene intercettata dal processo di lavoro Cloudflare e indirizzata al back-end del servizio Edge Optimize. La richiesta al back-end include le intestazioni necessarie.

Test della richiesta al back-end

Puoi verificare l’indirizzamento effettuando una richiesta diretta al back-end del servizio Edge Optimize.

curl -svo /dev/null https://live.edgeoptimize.net/page.html \
  -H 'x-forwarded-host: www.example.com' \
  -H 'x-edgeoptimize-url: /page.html' \
  -H 'x-edgeoptimize-api-key: $EDGE_OPTIMIZE_API_KEY' \
  -H 'x-edgeoptimize-config: LLMCLIENT=TRUE;'

Intestazioni necessarie

Le seguenti intestazioni devono essere impostate sulle richieste al back-end del servizio Edge Optimize:

Intestazione
Descrizione
Esempio
x-forwarded-host
Host originale della richiesta. Necessario per identificare il dominio del sito.
www.example.com
x-edgeoptimize-url
Percorso URL originale e stringa di query della richiesta.
/page.html oppure /products?id=123
x-edgeoptimize-api-key
Chiave API fornita da Adobe per il tuo dominio.
your-api-key-here
x-edgeoptimize-config
Stringa di configurazione per la differenziazione delle chiavi nella cache.
LLMCLIENT=TRUE;

Opzioni di configurazione

Sono disponibili due modi per impostare Cloud Worker per Edge Optimize:

  • Opzione 1: distribuisci su Cloudflare (scelta consigliata): crea automaticamente un nuovo processo di lavoro e richiede di specificare le variabili di ambiente e i segreti richiesti. Utilizzare questa opzione se per questo dominio non è disponibile un Cloud Worker esistente.
  • Opzione 2: installazione manuale: istruzioni dettagliate per la creazione e la configurazione del worker. Utilizzare questa opzione se nel dominio è già configurato un lavoro Cloudflare Worker. Sarà necessario unire il codice Edge Optimize nel processo di lavoro esistente (vedere Passaggio 2: aggiungere il codice di lavoro) oppure se si preferisce il controllo completo sulla distribuzione.

Indipendentemente dall’opzione scelta, è necessario collegare manualmente il processo di lavoro al dominio. Vedere Passaggio: aggiunta di una route al dominio.

Opzione 1: implementazione in Cloud Flare

Questa opzione utilizza il pulsante Distribuisci su Cloudflare per creare automaticamente il processo di lavoro e configurare le variabili di ambiente e i segreti richiesti nell’account Cloudflare. Questo è il modo più rapido per iniziare se si sta configurando un nuovo lavoratore.

IMPORTANT
Utilizzare questa opzione solo se non dispone di un oggetto CloudFlare Worker esistente nel dominio. Se disponi già di un lavoratore, utilizza Opzione 2: configurazione manuale per aggiungere la logica di routing di Edge Optimize al lavoratore esistente.

Passaggio 1: distribuire il lavoratore

Fai clic sul pulsante seguente per distribuire il processo di lavoro Edge Optimize all’account Cloudflare:

Distribuisci su Cloudflare

Passaggio 2: compilare il modulo di distribuzione

Facendo clic sul pulsante si apre la pagina di impostazione dei processi di lavoro. Compila il modulo come segue:

Pagina di installazione di Cloud Flare Workers

  1. Account Git - Seleziona l’account GitHub o GitLab dal menu a discesa. Cloudflare effettua il forking del codice del processo di lavoro in un archivio nel tuo account. Se nessun account è elencato, è possibile aggiungere una nuova connessione direttamente dal menu a discesa selezionando + Nuova connessione GitHub o + Nuova connessione GitLab. Per ulteriori informazioni, vedere la Guida all’integrazione di Git Cloudflare.

    Menu a discesa dell'account Git che mostra le opzioni Nuova connessione GitHub e Nuova connessione GitLab

  2. Crea archivio Git privato. Lasciare selezionata questa opzione (impostazione predefinita).

  3. Nome progetto - Lasciare edge-optimize-router o immettere un nome a scelta.

  4. EDGE_OPTIMIZE_API_KEY — Incolla la chiave API Edge Optimize fornita da Adobe. Questo valore viene archiviato come segreto crittografato.

  5. EDGE_OPTIMIZE_TARGET_HOST - Immettere il dominio del sito senza il protocollo, ad esempio www.example.com.

  6. Comando di compilazione. Lasciare vuoto.

  7. Distribuisci comando — Lascia come npm run deploy (precompilato).

  8. Build per rami non di produzione - Lascia deselezionata. Questa è una funzione del flusso di lavoro per sviluppatori e non è necessaria per questa distribuzione.

  9. Fare clic su Crea e distribuisci.

Dopo aver distribuito il processo di lavoro, passare a Aggiungere una route al dominio per collegare il processo di lavoro al dominio. Il routing non viene configurato automaticamente e deve essere completato manualmente.

Opzione 2: configurazione manuale

Per creare e configurare manualmente il processo di lavoro, eseguire la procedura seguente.

Passaggio 1: creare il processo di lavoro Cloudflare

  1. Accedi alla dashboard di Cloudflare.
  2. Passa a Workers & Pages (Processi di lavoro e pagine) nella barra laterale.
  3. Fai clic su Create application (Crea applicazione), quindi su Create Worker (Crea processo di lavoro).
  4. Assegna un nome al processo di lavoro, ad esempio edge-optimize-router.
  5. Fai clic su Deploy (Implementa) per creare il processo di lavoro con il codice predefinito.

Dashboard dei processi di lavoro Cloudflare

Passaggio 2: aggiungere il codice del processo di lavoro

Dopo aver creato il processo di lavoro, fare clic su Modifica codice e sostituire il codice predefinito con il seguente. Se disponi già di un lavoro Cloudflare, unisci il codice seguente con il codice del lavoro esistente invece di sostituirlo completamente.

/**
 * Edge Optimize BYOCDN - Cloudflare Worker
 *
 * This worker routes requests from agentic bots (AI/LLM user agents) to the
 * Edge Optimize backend service for optimized content delivery.
 *
 * Features:
 * - Routes agentic bot traffic to Edge Optimize backend
 * - Failover to origin on Edge Optimize errors (any 4XX or 5XX errors)
 * - Loop protection to prevent infinite redirects
 * - Human visitors and SEO bots are served from the origin as usual
 */

// List of agentic bot user agents to route to Edge Optimize
const AGENTIC_BOTS = [
  'AdobeEdgeOptimize-AI',
  'ChatGPT-User',
  'GPTBot',
  'OAI-SearchBot',
  'PerplexityBot',
  'Perplexity-User'
];

// Targeted paths for Edge Optimize routing
// Set to null to route all HTML pages, or specify an array of paths
const TARGETED_PATHS = null; // e.g., ['/', '/page.html', '/products']

// Failover configuration
// Failover on any 4XX client error or 5XX server error from Edge Optimize
const FAILOVER_ON_4XX = true; // Failover on any 4XX error (400-499)
const FAILOVER_ON_5XX = true; // Failover on any 5XX error (500-599)

export default {
  async fetch(request, env, ctx) {
    return await handleRequest(request, env, ctx);
  },
};

async function handleRequest(request, env, ctx) {
  const url = new URL(request.url);
  const userAgent = request.headers.get("user-agent")?.toLowerCase() || "";

  // Check if request is already processed (loop protection)
  const isEdgeOptimizeRequest = !!request.headers.get("x-edgeoptimize-request");

  // Construct the original path and query string
  const pathAndQuery = `${url.pathname}${url.search}`;

  // Check if the path matches HTML pages (no extension or .html extension)
  const isHtmlPage = /(?:\/[^./]+|\.html|\/)$/.test(url.pathname);

  // Check if path is in targeted paths (if specified)
  const isTargetedPath = TARGETED_PATHS === null
    ? isHtmlPage
    : (isHtmlPage && TARGETED_PATHS.includes(url.pathname));

  // Check if user agent is an agentic bot
  const isAgenticBot = AGENTIC_BOTS.some((ua) => userAgent.includes(ua.toLowerCase()));

  // Route to Edge Optimize if:
  // 1. Request is NOT already from Edge Optimize (prevents infinite loops)
  // 2. User agent matches one of the agentic bots
  // 3. Path is targeted for optimization
  if (!isEdgeOptimizeRequest && isAgenticBot && isTargetedPath) {

    // Build the Edge Optimize request URL
    const edgeOptimizeURL = `https://live.edgeoptimize.net${pathAndQuery}`;

    // Clone and modify headers for the Edge Optimize request
    const edgeOptimizeHeaders = new Headers(request.headers);

    // Remove any existing Edge Optimize headers for security
    edgeOptimizeHeaders.delete("x-edgeoptimize-api-key");
    edgeOptimizeHeaders.delete("x-edgeoptimize-url");
    edgeOptimizeHeaders.delete("x-edgeoptimize-config");
    edgeOptimizeHeaders.delete("x-edgeoptimize-fetcher-key"); // Optional (required only in case of WAF)

    // x-forwarded-host: The original site domain
    // Use environment variable if set, otherwise use the request host
    edgeOptimizeHeaders.set("x-forwarded-host", env.EDGE_OPTIMIZE_TARGET_HOST ?? url.host);

    // x-edgeoptimize-api-key: Your Adobe-provided API key
    edgeOptimizeHeaders.set("x-edgeoptimize-api-key", env.EDGE_OPTIMIZE_API_KEY);

    // x-edgeoptimize-url: The original request URL path and query
    edgeOptimizeHeaders.set("x-edgeoptimize-url", pathAndQuery);

    // x-edgeoptimize-config: Configuration for cache key differentiation
    edgeOptimizeHeaders.set("x-edgeoptimize-config", "LLMCLIENT=TRUE;");

    // edgeOptimizeHeaders.set("x-edgeoptimize-fetcher-key", "<YOUR FETCHER KEY>"); // Optional (required only in case of WAF)

    try {
      // Send request to Edge Optimize backend
      const edgeOptimizeResponse = await fetch(new Request(edgeOptimizeURL, {
        headers: edgeOptimizeHeaders,
        redirect: "manual", // Preserve redirect responses from Edge Optimize
      }), {
        cf: {
          cacheEverything: true, // Enable caching based on origin's cache-control headers
        },
      });

      // Check if we need to failover to origin
      const status = edgeOptimizeResponse.status;
      const is4xxError = FAILOVER_ON_4XX && status >= 400 && status < 500;
      const is5xxError = FAILOVER_ON_5XX && status >= 500 && status < 600;

      if (is4xxError || is5xxError) {
        console.log(`Edge Optimize returned ${status}, failing over to origin`);
        return await failoverToOrigin(request, env, url);
      }

      // Return the Edge Optimize response
      return edgeOptimizeResponse;

    } catch (error) {
      // Network error or timeout - failover to origin
      console.log(`Edge Optimize request failed: ${error.message}, failing over to origin`);
      return await failoverToOrigin(request, env, url);
    }
  }

  // For all other requests (human users, SEO bots), pass through unchanged
  return fetch(request);
}

/**
 * Failover to origin server when Edge Optimize returns an error
 * @param {Request} request - The original request
 * @param {Object} env - Environment variables
 * @param {URL} url - Parsed URL object
 */
async function failoverToOrigin(request, env, url) {
  // Build origin URL
  const originURL = `${url.protocol}//${env.EDGE_OPTIMIZE_TARGET_HOST}${url.pathname}${url.search}`;

  // Prepare headers - clean Edge Optimize headers and add loop protection
  const originHeaders = new Headers(request.headers);
  originHeaders.set("Host", env.EDGE_OPTIMIZE_TARGET_HOST);
  originHeaders.delete("x-edgeoptimize-api-key");
  originHeaders.delete("x-edgeoptimize-url");
  originHeaders.delete("x-edgeoptimize-config");
  originHeaders.delete("x-forwarded-host");
  originHeaders.set("x-edgeoptimize-request", "fo");

  // Create and send origin request
  const originRequest = new Request(originURL, {
    method: request.method,
    headers: originHeaders,
    body: request.body,
    redirect: "manual",
  });

  const originResponse = await fetch(originRequest);

  // Add failover marker header to response
  const modifiedResponse = new Response(originResponse.body, {
    status: originResponse.status,
    statusText: originResponse.statusText,
    headers: originResponse.headers,
  });
  modifiedResponse.headers.set("x-edgeoptimize-fo", "1");
  return modifiedResponse;
}

Fai clic su Save and deploy (Salva e implementa) per pubblicare il processo di lavoro.

Editor codice del processo di lavoro Cloudflare

Passaggio 3: configurare variabili di ambiente e segreti

Le variabili di ambiente memorizzano in modo sicuro le configurazioni sensibili, come la chiave API.

  1. Nelle impostazioni del processo di lavoro, passa a Settings > Variables (Impostazioni > Variabili).

  2. In Environment Variables (Variabili ambiente), fai clic su Add variable (Aggiungi variabile).

  3. Aggiungi le seguenti variabili:

    table 0-row-3 1-row-3 2-row-3
    Nome della variabile Descrizione Obbligatorio
    EDGE_OPTIMIZE_API_KEY Chiave API del servizio Edge Optimize fornita da Adobe.
    EDGE_OPTIMIZE_TARGET_HOST Host target per le richieste al servizio Edge Optimize (inviate come intestazione x-forwarded-host) e il dominio di origine per il failover. Deve essere solo il dominio, senza protocollo (ad esempio: www.example.com, e non https://www.example.com).
  4. Per la chiave API, fai clic su Encrypt (Crittografa) per memorizzarla in modo sicuro.

  5. Fai clic su Save and deploy (Salva e implementa).

Variabili di ambiente Cloudflare

Aggiungere una route al dominio add-a-route-to-your-domain

Indipendentemente dall’opzione di configurazione utilizzata, è necessario collegare manualmente il worker al dominio. Questo passaggio attiva il lavoratore nel traffico.

  1. Per il tuo processo di lavoro, passa a Settings > Triggers (Impostazioni > Trigger).
  2. In Routes (Indirizzamenti), fai clic su Add route (Aggiungi indirizzamento).
  3. Inserisci il pattern del tuo dominio, ad esempio www.example.com/* o example.com/*.
  4. Seleziona la zona dal menu a discesa.
  5. Fai clic su Salva.

In alternativa, puoi configurare gli indirizzamenti a livello di zona:

  1. Passa al tuo dominio in Cloudflare.
  2. Passa a Workers Routes (Indirizzamenti dei processi di lavoro).
  3. Fai clic su Add route (Aggiungi indirizzamento) e specifica il pattern e il processo di lavoro.

Indirizzamenti del processo di lavoro Cloudflare

Verifica del comportamento di failover

Se il servizio Edge Optimize non è disponibile o restituisce un errore, il processo di lavoro esegue automaticamente il failover sulla tua origine. Le risposte di failover includono l’intestazione x-edgeoptimize-fo:

< HTTP/2 200
< x-edgeoptimize-fo: 1

Per la risoluzione di eventuali problemi, puoi monitorare gli eventi di failover nei registri dei processi di lavoro di Cloudflare.

Logica del processo di lavoro

Il processo di lavoro Cloudflare implementa la logica seguente:

  1. Rilevamento dell’agente utente: verifica se l’agente utente della richiesta in ingresso corrisponde a uno dei bot agentici definiti, senza distinzione maiuscole/minuscole.

  2. Targeting del percorso: facoltativamente, filtra le richieste in base ai percorsi di destinazione. Per impostazione predefinita, vengono indirizzate tutte le pagine HTML (URL che terminano con /, nessuna estensione o .html). Per percorsi specifici, puoi utilizzare l’array TARGETED_PATHS.

  3. Protezione da cicli infiniti: l’intestazione x-edgeoptimize-request impedisce cicli infiniti. Quando il servizio Edge Optimize invia richieste alla tua origine, questa intestazione viene impostata su "1" e il processo di lavoro trasmette la richiesta senza indirizzarla nuovamente al servizio Edge Optimize.

  4. Sicurezza delle intestazioni: prima di impostare le intestazioni del servizio Edge Optimize, il processo di lavoro rimuove le intestazioni x-edgeoptimize-* esistenti dalla richiesta in ingresso per evitare attacchi di inserimento di intestazioni.

  5. Mappatura delle intestazione: il processo di lavoro imposta le intestazioni necessarie per Edge Optimize:

    • x-forwarded-host - Identifica il dominio del sito originale.
    • x-edgeoptimize-url - Mantiene il percorso della richiesta originale e la stringa di query.
    • x-edgeoptimize-api-key - Autentica la richiesta con il servizio Edge Optimize.
    • x-edgeoptimize-config - Fornisce la configurazione delle chiavi nella cache.
  6. Logica di failover: se il servizio Edge Optimize restituisce un codice di stato di errore (errori client 4XX o errori server 5XX) o la richiesta non riesce a causa di un errore di rete, il processo di lavoro esegue automaticamente il failover sulla tua origine utilizzando EDGE_OPTIMIZE_TARGET_HOST. La risposta di failover include l’intestazione x-edgeoptimize-fo: 1 per indicare che si tratta di failover.

  7. Gestione del reindirizzamento: l’opzione redirect: "manual" fa sì che le risposte di reindirizzamento dal servizio Edge Optimize vengano trasmesse al client senza che il processo di lavoro le segua.

Personalizzazione della configurazione

Puoi personalizzare il comportamento del processo di lavoro modificando le costanti di configurazione all’inizio del codice:

Elenco dei bot agentici

Modifica l’array AGENTIC_BOTS per aggiungere o rimuovere agenti utente:

const AGENTIC_BOTS = [
  'AdobeEdgeOptimize-AI',
  'ChatGPT-User',
  'GPTBot',
  'OAI-SearchBot',
  'PerplexityBot',
  'Perplexity-User',
  // Add additional user agents as needed
  'ClaudeBot',
  'Anthropic-AI'
];

Percorsi di destinazione

Per impostazione predefinita, tutte le pagine HTML vengono indirizzate al servizio Edge Optimize. Per limitare l’indirizzamento a percorsi specifici, modifica l’array TARGETED_PATHS:

// Route all HTML pages (default)
const TARGETED_PATHS = null;

// Or specify exact paths to route
const TARGETED_PATHS = ['/', '/page.html', '/products', '/about-us'];

Cofigurazione del failover

Per impostazione predefinita, il processo di lavoro esegue il failover in caso di errori 4XX o 5XX dal servizio Edge Optimize. Personalizza questo comportamento:

// Default: failover on any 4XX or 5XX error
const FAILOVER_ON_4XX = true;
const FAILOVER_ON_5XX = true;

// Failover only on 5XX server errors (not 4XX client errors)
const FAILOVER_ON_4XX = false;
const FAILOVER_ON_5XX = true;

// Disable automatic failover (not recommended)
const FAILOVER_ON_4XX = false;
const FAILOVER_ON_5XX = false;

Considerazioni importanti

  • Comportamento di failover: se il servizio Edge Optimize restituisce un errore (con codici di stato 4XX o 5XX) o se la richiesta non riesce a causa di un errore di rete, il processo di lavoro esegue automaticamente il failover sull’origine. Il failover utilizza EDGE_OPTIMIZE_TARGET_HOST come dominio di origine, simile a F_Default_Origin di Fastly o Default_Origin di CloudFront. Le risposte di failover includono l’intestazione x-edgeoptimize-fo: 1, che puoi utilizzare a scopo di monitoraggio e debug.

  • Memorizzazione in cache: per impostazione predefinita, Cloudflare memorizza le risposte nella cache in base all’URL. Poiché il traffico da IA agentica riceve contenuti diversi rispetto al traffico da persone, assicurati che la configurazione della cache tenga conto di tali differenze. Per distinguere i contenuti memorizzati in cache, puoi utilizzare l’API cache o intestazioni per la cache. L’intestazione x-edgeoptimize-config deve essere inclusa nella chiave della cache.

  • Limite di frequenza: monitora l’utilizzo del servizio Edge Optimize e, se necessario, puoi implementare un limite di frequenza per il traffico da IA agentica.

  • Test: prima di implementare in produzione, verifica sempre la configurazione in un ambiente di staging. Verifica che il sia traffico agentico sia quello da persone si comportino come previsto. Verifica il comportamento di failover simulando errori del servizio Edge Optimize.

  • Registrazione: abilita la registrazione dei processi di lavoro Cloudflare per monitorare le richieste e risolvere eventuali problemi. Passa a Workers (Processi di lavoro) > tuo processo di lavoro > Logs (Registri) per visualizzare i registri in tempo reale. Il processo di lavoro registra gli eventi di failover a scopo di debug.

Risoluzione dei problemi

Problema
Causa possibile
Soluzione
Nessuna intestazione x-edgeoptimize-request-id nella risposta
Indirizzamento del processo di lavoro non corrispondente oppure agente utente non presente nell’elenco dei bot agentici.
Verifica che il pattern di indirizzamento corrisponda all’URL della richiesta. Verifica che l’agente utente si trovi nell’array AGENTIC_BOTS.
Errori 401 o 403 dal servizio Edge Optimize
Chiave API non valida o mancante.
Verificare che EDGE_OPTIMIZE_API_KEY sia impostato correttamente nelle variabili di ambiente e nei segreti. Contatta Adobe per verificare che la tua chiave API sia attiva.
Reindirizzamenti o cicli infiniti
Intestazione di protezione del ciclo non impostata o controllata correttamente.
Assicurati che il controllo dell’intestazione x-edgeoptimize-request sia attivo.
Traffico da persone interessato da modifiche
Logica di indirizzamento del processo di lavoro troppo ampia.
Verifica che la logica di corrispondenza dell’agente utente sia corretta e senza distinzione minuscole/maiuscole. Verifica che TARGETED_PATHS sia configurato correttamente.
Tempi di risposta lenti
Latenza di rete verso il back-end del servizio Edge Optimize.
È un comportamento normale per la prima richiesta; le richieste successive vengono memorizzate nella cache del servizio Edge Optimize.
Intestazione x-edgeoptimize-fo: 1 nella risposta
Il servizio Edge Optimize ha restituito un errore e si è verificato il failover sull’origine.
Individua il codice di errore specifico nei registri dei processi di lavoro di Cloudflare. Verifica lo stato del servizio Edge Optimize presso Adobe.
Failover non funzionante
Flag di failover disabilitati o errore nella logica di failover.
Verifica che FAILOVER_ON_4XX e FAILOVER_ON_5XX siano impostati su true. Verifica la presenza di messaggi di errore nei registri del processo di lavoro.
Alcuni percorsi non sono ottimizzati
Il percorso non corrisponde ai percorsi di destinazione o al pattern della pagina HTML.
Verifica che il percorso sia in TARGETED_PATHS (se specificato) e che corrisponda al pattern regex della pagina HTML.
Richieste non riuscite con host non valido
EDGE_OPTIMIZE_TARGET_HOST include il protocollo, ad esempio https://.
Utilizza solo il nome di dominio senza protocollo (ad esempio: example.com e non https://example.com).
Errore 530 durante il failover
Cloudflare non è in grado di connettersi all’origine oppure la richiesta di failover contiene intestazioni non valide.
Assicurati che la funzione di failover rimuova le intestazioni del servizio Edge Optimize. Verifica che l’origine sia accessibile e che il DNS sia configurato correttamente.

Consenti ottimizzazione in Edge tramite regole firewall (facoltativo)

Se la rete CDN utilizza un WAF o un Bot Manager:

  • Inserire nell’elenco Consentiti l’agente utente *AdobeEdgeOptimize/1.0* nel WAF o nel gestore bot in modo che il servizio Optimize at Edge possa recuperare il contenuto di origine.

  • Se il firewall richiede ulteriori verifiche oltre all’agente utente, generare un segreto (ad esempio, openssl rand -hex 32) e:

    • Aggiungi x-edgeoptimize-fetcher-key con il segreto nelle regole di routing insieme alle altre intestazioni x-edgeoptimize-*.
    • Aggiungi una regola di WAF o Bot Manager per consentire le richieste in cui x-edgeoptimize-fetcher-key corrisponde allo stesso segreto.
  • Ottimizza in Edge inoltra questa intestazione così com’è, sei il proprietario dell’intero ciclo di vita delle chiavi.

Verificare la configurazione

Dopo aver completato la configurazione, verifica che il traffico proveniente da bot venga indirizzato al servizio Edge Optimize e che il traffico da persone non sia interessato da alcuna modifica.

1. Test del traffico da bot (deve risultare ottimizzato)

Simula una richiesta da un bot IA utilizzando un agente utente da IA agentica:

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

Se il test ha esito positivo, la risposta contiene l’intestazione x-edgeoptimize-request-id, a conferma che la richiesta è stata indirizzata tramite il servizio Edge Optimize:

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

2. Test del traffico da persone (deve risultare NON interessato da modifiche)

Simula una normale richiesta inserita da una persona nel browser:

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 risposta non deve contenere l’intestazione x-edgeoptimize-request-id. Il contenuto della pagina e il tempo di risposta devono risultare identici rispetto a prima che sia stata abilitata la funzione Ottimizza su rete edge.

3. Differenze tra i due scenari

Intestazione
Traffico da bot (ottimizzato)
Traffico da persone (non interessato da modifiche)
x-edgeoptimize-request-id
Presente: contiene un ID di richiesta univoco
Assente
x-edgeoptimize-fo
Presente solo in caso di failover (valore: 1)
Assente

Lo stato del routing del traffico può essere controllato anche nell’interfaccia utente di LLM Optimizer. Passa a Configurazione cliente e seleziona la scheda Configurazione CDN.

Distribuzione delle ottimizzazioni agli agenti di IA - completata

Per ulteriori informazioni su Ottimizza in Edge, tra cui le opportunità disponibili, i flussi di lavoro di ottimizzazione automatica e le domande frequenti, torna alla Panoramica sull’ottimizzazione in Edge.

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