Fastly (BYOCDN)
Diese Konfiguration leitet den Agentenverkehr (Anfragen von KI-Bots und LLM-Benutzeragenten) an den Backend-Service von Edge Optimize (live.edgeoptimize.net) weiter. Menschliche Besucher und SEO-Bots werden weiterhin von Ihrem Ursprung aus bedient. Um die Konfiguration zu testen, suchen Sie nach Abschluss der Einrichtung in der Antwort nach dem Header-x-edgeoptimize-request-id.
Voraussetzungen
Bevor Sie die Fastly-VCL-Regeln einrichten, stellen Sie sicher, dass Sie Folgendes haben:
- Zugriff auf Fastly für Ihre Domain.
- Einen Edge Optimize-API-Schlüssel, der von der LLM Optimizer-Benutzeroberfläche abgerufen wurde. Anweisungen hierzu finden Sie unter Abrufen Ihrer API-Schlüssel.
- (Optional) Informationen zum Testen des Staging-Routings finden Sie unter Staging-API-Schlüssel.
Konfiguration
Fügen Sie die folgenden drei VCL-Snippets zu Ihrem Fastly-Service hinzu. Diese Snippets behandeln Routing-Agent-Anfragen an Edge Optimizer, die Cache-Schlüsseltrennung und das Failover zu Ihrem standardmäßigen Ursprung.
VCL_RECV-Snippet
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;
}
VCL_HASH-Snippet
if (req.http.x-edgeoptimize-config) {
set req.hash += "edge-optimize";
set req.hash += req.http.x-edgeoptimize-config;
}
VCL_DELIVER-Snippet
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
Das vcl_deliver-Snippet verarbeitet Failover automatisch. Wenn Edge Optimize einen 4XX- oder 5XX zurückgibt, wird die Anfrage neu gestartet und an Ihren Standardursprung zurückgeleitet, sodass der Endbenutzer weiterhin eine Antwort erhält. Die Failover-Antworten enthalten die x-edgeoptimize-fo: 1.
2XX zurück4XX oder 5XX zurückx-edgeoptimize-fo: 1.Zulassen, dass in Edge durch Firewall-Regeln optimiert wird (optional)
Wenn Ihr CDN einen WAF oder Bot Manager verwendet:
-
Zulassungsliste des
*AdobeEdgeOptimize/1.0*-Benutzeragenten in WAF oder Bot-Manager, damit der Service „Optimieren unter Edge" Ihre Ursprungs-Inhalte abrufen kann. -
Wenn Ihre Firewall eine zusätzliche Überprüfung über den Benutzeragenten hinaus erfordert, generieren Sie ein Geheimnis (z. B.
openssl rand -hex 32) und:- Fügen Sie
x-edgeoptimize-fetcher-keymit dem Geheimnis in Ihren Routing-Regeln zusammen mit den anderenx-edgeoptimize-*Kopfzeilen hinzu. - Fügen Sie eine WAF- oder Bot-Manager-Regel hinzu, um Anfragen zuzulassen, bei denen
x-edgeoptimize-fetcher-keymit demselben Geheimnis übereinstimmt.
- Fügen Sie
-
Bei Edge optimieren leitet diese Kopfzeile unverändert weiter - Sie besitzen den gesamten Schlüssellebenszyklus.
Überprüfen Sie das Setup
Stellen Sie nach Abschluss des Setups sicher, dass Bot-Traffic an Edge Optimize weitergeleitet wird und dass der menschliche Traffic nicht betroffen ist.
1. Bot-Traffic testen (sollte optimiert werden)
Simulieren einer KI-Bot-Anfrage mithilfe eines agenten Benutzeragenten:
curl -svo /dev/null https://www.example.com/page.html \
--header "user-agent: chatgpt-user"
Eine erfolgreiche Antwort enthält den x-edgeoptimize-request-id-Header, der bestätigt, dass die Anfrage über Edge Optimize weitergeleitet wurde:
< HTTP/2 200
< x-edgeoptimize-request-id: 50fce12d-0519-4fc6-af78-d928785c1b85
2. Testen des menschlichen Traffics (sollte NICHT betroffen sein)
Simulieren Sie eine normale menschliche Browser-Anfrage:
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"
Die Antwort sollte nicht den x-edgeoptimize-request-id-Header enthalten. Seiteninhalt und Antwortzeit sollten vor der Aktivierung von Optimieren bei Edge identisch mit bleiben.
3. Wie lassen sich die beiden Szenarien voneinander unterscheiden
x-edgeoptimize-request-idx-edgeoptimize-fo1)Der Status des Traffic-Routings kann auch in der LLM Optimizer-Benutzeroberfläche überprüft werden. Navigieren Sie zu Kundenkonfiguration und wählen Sie die Registerkarte CDN-Konfiguration aus.
Weitere Informationen zu „Optimieren bei Edge", einschließlich verfügbarer Opportunitys, Workflows für die automatische Optimierung und häufig gestellte Fragen, finden Sie unter " bei Edge - Überblick.