Fastly (BYOCDN)

Essa configuração roteia o tráfego de agente (solicitações de bots de IA e agentes de usuário LLM) para o serviço de back-end de Otimização da Edge (live.edgeoptimize.net). Visitantes humanos e bots de SEO continuam a ser oferecidos de sua origem como de costume. Para testar a configuração, após a conclusão da instalação, procure o cabeçalho x-edgeoptimize-request-id na resposta.

Pré-requisitos

Antes de configurar as regras do Fastly VCL, verifique se você tem:

  • Acesso ao Fastly no seu domínio.
  • O processo de integração do LLM Optimizer foi concluído.
  • Encaminhamento de log CDN concluído para o LLM Optimizer.
  • Uma chave de API de otimização do Edge recuperada da interface do usuário do LLM Optimizer.
  • (Opcional) Para testar o roteamento de preparo, consulte Opcional: Testar roteamento em um nome de host de preparo no final desta página.

Etapas para recuperar a chave de API de otimização do Edge de produção:

  1. Na LLM Optimizer, abra Configuração do cliente e selecione a guia Configuração de CDN.

    Navegar até a Configuração do Cliente

  2. Localize a seção Implantar otimizações em agentes de IA. Marque a caixa de seleção Habilitar mecanismo de otimização.

    Implantar otimizações em agentes de IA — pendente

  3. No diálogo de confirmação, selecione Habilitar.

    Habilitar caixa de diálogo de confirmação do mecanismo de otimização

  4. Selecione Exibir detalhes. Na caixa de diálogo Implantar detalhes de otimizações, copie a Chave da API de Produção (use Copiar ao lado do campo).

    Chave da API de produção em Detalhes de otimizações de implantação

    note
    NOTE
    A caixa de diálogo pode mostrar que a configuração não está concluída. Isso é esperado até que o roteamento seja verificado — você ainda pode copiar a chave da API para que sua equipe de TI ou de CDN possa concluir a configuração.

Além disso, se você precisar de ajuda com as etapas acima, entre em contato com a equipe de conta da Adobe ou com o llmo-at-edge@adobe.com.

Configuração

Adicione os três trechos de VCL a seguir ao serviço Fastly. Esses snippets lidam com solicitações de agente de roteamento para o Edge Otimize, separação de chaves de cache e failover para sua origem padrão.

Fastly VCL

Adicionar snippets de VCL

Snippet 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;
}

Snippet vcl_hash

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

Snippet 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";
}

Failover

O trecho vcl_deliver trata o failover automaticamente. Se o Edge Otimize retornar um erro 4XX ou 5XX, a solicitação será reiniciada e roteada de volta para sua origem padrão para que o usuário final ainda receba uma resposta. As respostas de failover incluem o cabeçalho x-edgeoptimize-fo: 1.

Cenário
Comportamento
O Edge Otimize retorna 2XX
A resposta otimizada é fornecida ao cliente.
O Edge Otimize retorna 4XX ou 5XX
A solicitação é reiniciada e veiculada a partir da origem padrão.
Resposta de failover
Inclui o cabeçalho x-edgeoptimize-fo: 1.

Permitir otimização na Edge por meio de regras de firewall (opcional)

Se o CDN usar um WAF ou Gerenciador de bot:

  • Inclua na lista de permissões o agente de usuário *AdobeEdgeOptimize/1.0* no WAF ou no Gerenciador de bot para que o serviço Otimizar na Edge possa buscar o conteúdo de origem.

  • Se o firewall exigir verificação adicional além do agente do usuário, gere um segredo (por exemplo, openssl rand -hex 32) e:

    • Adicione x-edgeoptimize-fetcher-key com o segredo em suas regras de roteamento junto com os outros cabeçalhos x-edgeoptimize-*.
    • Adicione uma regra do WAF ou do Gerenciador de bot para permitir solicitações em que x-edgeoptimize-fetcher-key corresponde ao mesmo segredo.
  • Otimizar no Edge encaminha esse cabeçalho como está — você é o proprietário do ciclo de vida completo da chave.

Verificar a configuração

Após concluir a configuração, verifique se o tráfego de bot está sendo roteado para o Edge Otimize e se o tráfego humano não foi afetado.

1. Tráfego de bot de teste (deve ser otimizado)

Simular uma solicitação de bot de IA usando um user-agent agêntico:

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

Uma resposta bem-sucedida inclui o cabeçalho x-edgeoptimize-request-id, confirmando que a solicitação foi roteada pelo Edge Otimize:

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

2. Testar tráfego humano (NÃO deve ser afetado)

Simular uma solicitação regular de navegador 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"

A resposta deve não conter o cabeçalho x-edgeoptimize-request-id. O conteúdo da página e o tempo de resposta devem permanecer idênticos a antes de habilitar a opção Otimizar no Edge.

3. Como diferenciar entre os dois cenários

Cabeçalho
Tráfego de bot (otimizado)
Tráfego humano (não afetado)
x-edgeoptimize-request-id
Presente — contém um ID de solicitação exclusivo
Ausente
x-edgeoptimize-fo
Presente somente se houver failover (valor: 1)
Ausente

O status do roteamento de tráfego também pode ser verificado na interface do usuário do LLM Optimizer. Navegue até Configuração do cliente e selecione a guia Configuração de CDN.

Implantação de otimizações em agentes de IA — concluída

Opcional: Testar roteamento em um nome de host de preparo

Se você quiser validar o roteamento em um ambiente inferior antes de habilitar o roteamento de produção, poderá configurar um nome de host de preparo.

Requisitos

  • O nome de host de preparo deve estar no mesmo domínio registrável que a produção (por exemplo, https://staging.example.com quando a produção for https://www.example.com).
  • Apenas um domínio de preparo por site. Depois de salvo, não é possível alterá-lo sem entrar em contato com a Adobe.

Obtenha sua chave de API de preparo

  1. Abra Configuração do cliente e selecione Configuração da CDN.
  2. Em Implantar otimizações para agentes de IA, selecione Adicionar domínio de preparo (ou Domínio de preparo se um domínio de preparo já estiver configurado).
  3. Insira a URL de preparo completa incluindo https:// e selecione Definir Domínio.
  4. Copie a chave de API de preparo da caixa de diálogo de confirmação.

Chave de API do domínio de preparo

Implante as mesmas regras de roteamento no ambiente de preparo usando a chave de API de preparo.

Testar tráfego de bot de preparo

Substitua https://staging.example.com/page.html com seu caminho e URL de preparo real. Êxito: a resposta inclui o cabeçalho x-edgeoptimize-request-id.

Se precisar de ajuda, contate llmo-at-edge@adobe.com.

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

Para saber mais sobre como Otimizar na Edge, incluindo oportunidades disponíveis, fluxos de trabalho de otimização automática e perguntas frequentes, volte para a visão geral de Otimizar na Edge.

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