CloudFront (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
Stellen Sie vor dem Einrichten der CloudFront-Konfiguration sicher, dass Sie über Folgendes verfügen:
- Eine vorhandene CloudFront-Distribution, die Ihre Website bedient.
- AWS IAM-Berechtigungen zum Erstellen von Lambda-Funktionen, IAM-Rollen, CloudFront-Distributionen und Cache-Richtlinien.
- Onboarding-Prozess für LLM Optimizer abgeschlossen.
- CDN-Protokollweiterleitung an LLM Optimizer abgeschlossen.
- Einen Edge Optimize-API-Schlüssel, der von der LLM Optimizer-Benutzeroberfläche abgerufen wurde.
Schritte zum Abrufen Ihres API-Schlüssels:
-
Navigieren Sie zu Kundenkonfiguration und wählen Sie die Registerkarte CDN-Konfiguration aus.
-
Aktivieren unter „KI-Traffic-Routing zur" das Kontrollkästchen Optimierungen für KI-Agenten.
-
Kopieren Sie den API-Schlüssel und fahren Sie mit den folgenden Schritten zur Routing-Konfiguration fort.
note note NOTE In dieser Phase zeigt der Status möglicherweise ein rotes Kreuz an, das anzeigt, dass die Einrichtung noch nicht abgeschlossen ist. Dies wird erwartet - Sobald Sie die unten stehende Routing-Konfiguration abgeschlossen haben und der Traffic des KI-Bots fließt, wird der Status in ein grünes Häkchen geändert, wodurch bestätigt wird, dass das Routing erfolgreich aktiviert wurde.
Wenn Sie Hilfe zu den oben genannten Schritten benötigen, wenden Sie sich außerdem an Ihr Adobe-Account-Team oder an Ihren llmo-at-edge@adobe.com.
Schritt 1: Edge Optimize Origin erstellen
Navigation: AWS Console > CloudFront > Verteilungen > [Ihre Verteilung] > Registerkarte „Ursprünge“
-
Klicken Sie Herkunft erstellen.
-
Konfigurieren Sie den Ursprung:
- Ursprungs-Domain:
live.edgeoptimize.net - Name:
EdgeOptimize_Origin
- Ursprungs-Domain:
-
Belassen Sie alle anderen Felder mit ihren Standardwerten.
-
Hinzufügen benutzerdefinierter Kopfzeilen:
table 0-row-2 1-row-2 2-row-2 Kopfzeile Wert x-edgeoptimize-api-keyIhr API-Schlüssel x-forwarded-hostwww.example.comErsetzen Sie
www.example.comdurch Ihre eigentliche Website-Domain undYour API keydurch den von Ihrem Adobe-Support-Mitarbeiter bereitgestellten API-Schlüssel für die Edge-Optimierung. -
Klicken Sie Herkunft erstellen.
Schritt 2: Viewer-Anforderungsfunktion erstellen
Navigation: AWS Console > CloudFront > Funktionen
-
Klicken Sie Funktion erstellen.
-
Konfigurieren:
- Name:
edgeoptimize-routing - runtime:
cloudfront-js-2.0
- Name:
-
Ersetzen Sie den Standard-Code durch den Code aus "-request.js.
Passen Sie vor der Veröffentlichung die folgenden Werte im Code an:
YOUR_DEFAULT_ORIGIN- Ersetzen Sie durch den Namen Ihres vorhandenen Standardursprungs (zu finden in CloudFront > Distributionen > [Ihre Verteilung] > Registerkarte Ursprünge ).TARGETED_PATHS- Wählen Sienullaus, um alle HTML-Seiten auszuwählen, oder legen Sie ein Array spezifischer Pfade fest, z. B.['/', '/products', '/about'].
-
Klicken Sie Änderungen speichern > Veröffentlichungsfunktion.
Schritt 3: Cache-Richtlinie konfigurieren
Navigation: AWS Console > CloudFront > Verteilungen > [Ihre Verteilung] > Verhalten
Überprüfen Sie die derzeit mit Ihrem Verhalten verknüpfte Cache-Richtlinie. Klicken Sie Ihrem auf „Bearbeiten“ und sehen Sie sich den Abschnitt Cache-Schlüssel und -" an, um Ihr Szenario zu ermitteln:
- Szenario A (Legacy): wird ein Optionsfeld mit der Bezeichnung Legacy-Cache-Einstellungen ausgewählt. Es gibt kein Dropdown-Menü mit dem Richtliniennamen. Stattdessen werden Inline-TTL- und Kopfzeileneinstellungen angezeigt.
- Szenario B (benutzerdefinierte Richtlinie): Sie sehen Cache-Richtlinie, die mit einem von Ihnen oder Ihrem Team erstellten Richtliniennamen ausgewählt wurde (keine von AWS bereitgestellte Richtlinie).
- Szenario C (verwaltete Richtlinie): Sie sehen Cache-Richtlinie ausgewählt mit einem von AWS bereitgestellten Namen wie
CachingOptimized,CachingDisabledoderCachingOptimizedForUncompressedObjects- diese können nicht bearbeitet werden.
Szenario A: Alte Cache-Einstellungen
Wenn für Ihr Verhalten ältere Cache-Einstellungen verwendet werden:
-
Unter Cache-Schlüssel und -" wird "Cache-Einstellungen ausgewählt.
-
Fügen Sie
x-edgeoptimize-configundx-edgeoptimize-urlzur Zulassungsliste Kopfzeilen hinzu:- Wählen aus dem Dropdown-Menü Folgende Kopfzeilen einschließen“ aus.
x-edgeoptimize-configundx-edgeoptimize-urlhinzufügen.
Wenn Sie Alle im Kopfzeilen-Dropdown-Menü ausgewählt haben, überspringen Sie diesen Schritt. Alle Kopfzeilen werden automatisch an den Ursprung weitergeleitet.
-
Überprüfen Sie die Einstellung Objekt-Caching:
- Wenn auf Anpassen eingestellt, wird empfohlen, Mindest-TTL auf
0festzulegen. Wenn Ihre aktuelle Mindest-TTL jedoch bereits sehr kurz ist, müssen Sie sie möglicherweise nicht ändern. - Ist hierfür "-Cache-Kopfzeilen verwenden festgelegt, ist keine Änderung erforderlich.
- Wenn auf Anpassen eingestellt, wird empfohlen, Mindest-TTL auf
-
Klicken Sie Änderungen speichern.
Szenario B: Nicht veraltet mit einer benutzerdefinierten Cache-Richtlinie
Wenn für Ihr Verhalten bereits eine benutzerdefinierte Cache-Richtlinie verwendet wird (eine von Ihnen erstellte und keine von AWS verwaltete Richtlinie):
Navigation: AWS Console > CloudFront > Richtlinien > Cache
-
Klicken Sie auf Ihre bestehende Richtlinie.
-
Klicken Sie auf Bearbeiten.
-
Es wird empfohlen, "TTL“ "
0" festzulegen. Wenn Ihre aktuelle Mindest-TTL jedoch bereits sehr kurz ist, müssen Sie sie möglicherweise nicht ändern.
-
Fügen Sie unter Cache- > Kopfzeilen zusammen mit Ihren vorhandenen Einschlüssen
x-edgeoptimize-configundx-edgeoptimize-urlhinzu.
-
Klicken Sie Änderungen speichern.
Szenario C: Nicht veraltete mit einer verwalteten Cache-Richtlinie (AWS)
Wenn für Ihr Verhalten eine AWS Managed Cache-Richtlinie verwendet wird (z. B. CachingOptimized), können Sie sie nicht bearbeiten. Sie müssen eine neue benutzerdefinierte Cache-Richtlinie erstellen, die die vorhandenen verwalteten Richtlinieneinstellungen repliziert und die Edge Optimize-Kopfzeilen oben hinzufügt.
Teil 1: Notieren Sie sich Ihre aktuellen Einstellungen für verwaltete Cache-Richtlinien
Navigation: AWS Console > CloudFront > Richtlinien > Cache
-
Suchen Sie die verwaltete Cache-Richtlinie, die derzeit mit Ihrem Verhalten verbunden ist (z. B.
CachingOptimized), und klicken Sie darauf. -
Notieren Sie sich alle vorhandenen Einstellungen:
- Minimale TTL, maximale TTL, Standard-TTL
- Im Cache-Schlüssel enthaltene Kopfzeilen
- Im Cache-Schlüssel enthaltene Cookies
- Im Cache-Schlüssel enthaltene Abfragezeichenfolgen
- Komprimierungsunterstützung (Gzip, Brotli)
Teil 2: Erstellen Sie eine neue benutzerdefinierte Cache-Richtlinie mit denselben Einstellungen + Edge Optimize config
Navigation: AWS Console > CloudFront > Richtlinien > Cache
-
Klicken Sie Cache-Richtlinie erstellen.
-
Name:
edgeoptimize-cache
-
Replizieren Sie alle in Teil 1 genannten Einstellungen mit den folgenden Änderungen:
- Es wird empfohlen, "TTL“ "
0" festzulegen. Wenn Ihre aktuelle Mindest-TTL jedoch bereits sehr kurz ist, müssen Sie sie möglicherweise nicht ändern.
- Fügen Sie unter Cache- > Headers alles ein, was die verwaltete Richtlinie hatte, und fügen Sie
x-edgeoptimize-configundx-edgeoptimize-urlhinzu.
- Es wird empfohlen, "TTL“ "
-
Klicken Sie auf Erstellen.
-
Kehren Sie zu Ihrem Verhalten zurück und verknüpfen Sie die neu erstellte Richtlinie:
Navigation: AWS Console > CloudFront > Verteilungen > [Ihre Verteilung] > Verhalten
- Bearbeiten Sie Ihr Verhalten.
- Wählen unter „Cache-Schlüssel und -" die Option Cache-Richtlinie aus.
- Wählen Sie
edgeoptimize-cacheaus dem Dropdown-Menü aus. - Klicken Sie Änderungen speichern.
Schritt 4: Erstellen der Funktion Lambda@Edge (Ursprungsanfrage und -antwort)
us-east-1 (N. Virginia) erstellt. Dies ist eine AWS-Anforderung. Obwohl die Funktion in us-east-1 erstellt wurde, repliziert AWS sie automatisch an allen CloudFront-Edge-Speicherorten weltweit, sodass sie am nächsten Edge-Speicherort für den Viewer ausgeführt wird. Vergewissern Sie sich, dass Sie sich in der AWS-Konsole in der us-east-1 befinden, bevor Sie fortfahren.Erstellen der Lambda-Funktion
Navigation: AWS Console > Lambda
-
Klicken Sie Funktion erstellen.
-
Wählen Sie Von Grund auf erstellen.
-
Konfigurieren:
- Funktionsname:
edgeoptimize-origin - Belassen Sie alle anderen Felder mit ihren Standardwerten.
- Funktionsname:
-
Klicken Sie Funktion erstellen.
-
Ersetzen Sie im Code-Editor den Standard-Code durch den Code aus origin-request-response.js.
-
Klicken Sie Bereitstellen, um den Code zu speichern.
-
Beachten Sie den Namen der Ausführungsrolle der unter Konfiguration > Berechtigungen angezeigt wird (z. B.
edgeoptimize-origin-role-xxxxx). Sie benötigen dies in den folgenden Schritten.
Aktualisieren der Vertrauensrichtlinie der Ausführungsrolle
Die automatisch erstellte Rolle vertraut nur lambda.amazonaws.com. Für Lambda@Edge müssen Sie auch edgelambda.amazonaws.com hinzufügen.
Navigation: AWS Console > IAM > Rollen > [Ihre Rolle aus dem vorherigen Schritt] > Registerkarte „Vertrauensstellungen“
-
Klicken Sie Vertrauensrichtlinie bearbeiten.
-
Ersetzen Sie die Richtlinie durch den Inhalt von trust-policy.json.
-
Klicken Sie Richtlinie aktualisieren.
edgelambda.amazonaws.com-Service-Prinzipal ist erforderlich für Lambda@Edge. Ohne sie kann CloudFront Ihre Funktion nicht an Edge-Speicherorten aufrufen.Korrigieren Sie die Berechtigungsrichtlinie CloudWatch Logs
Die automatisch erstellte Rolle enthält eine für den regulären Lambda konfigurierte AWSLambdaBasicExecutionRole-Richtlinie, die den falschen Regionen- und Protokollgruppennamen für Lambda@Edge hat. Sie müssen sie aktualisieren.
Navigation: AWS Console > IAM > Rollen > [Ihre Rolle] > Registerkarte „Berechtigungen“ > Klicken Sie auf den Namen der angehängten Richtlinie (z. B. AWSLambdaBasicExecutionRole-xxxx)
-
Klicken Sie auf Bearbeiten.
-
Ersetzen Sie die Richtlinie durch den Inhalt von cloudwatch-policy.json.
Ersetzen Sie in der JSON-Datei
ACCOUNT_IDdurch Ihre eigentliche AWS-Konto-ID (in der oberen rechten Ecke der AWS-Konsole) undFUNCTION_NAMESie durch den Namen Ihrer Lambda-Funktion (z. B.edgeoptimize-origin). -
Klicken Sie Änderungen speichern.
* sein. Lambda@Edge wird am nächsten Edge-Speicherort für den Viewer ausgeführt, sodass Protokolle in CloudWatch in der Region des Edge-Speicherorts geschrieben werden (z. B. ap-south-1, eu-west-1), nicht unbedingt us-east-1. Die Protokollgruppe verwendet einen regional vorangestellten Namen: /aws/lambda/us-east-1.FUNCTION_NAME, wobei us-east-1 immer die Basisregion der Funktion ist.Version veröffentlichen
-
Klicken Sie auf der Funktionsseite auf Aktionen (oben rechts) > Neue Version.
-
Beschreibung hinzufügen.
-
Klicken Sie auf Veröffentlichen.
-
Kopieren oder notieren Sie sich die Funktion ARN — Sie benötigen diese im nächsten Schritt.
Schritt 5: Verknüpfen der Funktionen und Cache-Richtlinie mit dem Verhalten
Navigation: AWS Console > CloudFront > Verteilungen > [Ihre Verteilung] > Verhalten
-
Bearbeiten Sie Ihr Verhalten.
-
Wenn Sie in Schritt 3 (Szenario C) eine neue Cache-Richtlinie erstellt haben, setzen Sie Cache-Richtlinie auf
edgeoptimize-cache.
-
Konfigurieren unter "":
- Viewer-Anfrage:
edgeoptimize-routing - Ursprungsanfrage: versionierte Funktion ARN aus Schritt 4 (in Version veröffentlichen)
- Ursprungsantwort: versionierte ARN-Funktion aus Schritt 4 (in Version veröffentlichen)
- Viewer-Anfrage:
-
Klicken Sie Änderungen speichern.
Schritt 6: Testen Sie die Konfiguration
1. Bot-Traffic testen (sollte optimiert werden)
Senden Sie eine Anfrage mit einem Agent-Bot-Benutzeragenten. Bei der ersten Anfrage gibt Edge Optimize möglicherweise eine Proxy-Antwort (nicht optimiert) zurück, während die Seite verarbeitet und zwischengespeichert wird. Sie können dies anhand der x-edgeoptimize-proxy: 1 in der Antwort identifizieren.
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.
4. Überprüfen Sie, ob die Protokolle ordnungsgemäß fließen
Stellen Sie nach dem Ausführen der oben genannten Testanfragen sicher, dass Protokolle sowohl für die CloudFront- als auch für die Lambda@Edge-Funktion geschrieben werden.
CloudFront-Funktionsprotokolle (edgeoptimize-routing)
Navigation: AWS Console > CloudWatch > Protokollgruppen (in us-east-1 oder der Region, in der Ihre CloudFront-Verteilung konfiguriert ist)
-
Suchen Sie nach einer Protokollgruppe mit dem Namen
/aws/cloudfront/function/edgeoptimize-routing. -
Öffnen Sie den neuesten Protokolldatenstrom.
-
Bei agenten Anfragen sollten Sie Einträge wie die folgenden sehen:
Adding origin group for userAgent: chatgpt-userRouting to Edge Optimize origin for userAgent: chatgpt-user
-
Bei nicht-agenten Anfragen sollte Folgendes angezeigt werden:
Routing to Default origin for userAgent: ...
Sie können auch die Registerkarte Metriken unter AWS Console > CloudFront > Funktionen > Edge-Routing überprüfen, um Aufrufzählungen und Fehlerquoten anzuzeigen.
Lambda@Edge-Protokolle (edgeoptimize-origin)
us-east-1. Überprüfen Sie CloudWatch in der AWS-Region, die der Stelle am nächsten liegt, an der Sie den curl-Befehl ausgeführt haben.Navigation: AWS Console > CloudWatch > Protokollgruppen (stellen Sie sicher, dass Sie sich in der richtigen Region befinden)
-
Suchen Sie nach einer Protokollgruppe mit dem Namen
/aws/lambda/us-east-1.edgeoptimize-origin. -
Öffnen Sie den neuesten Protokolldatenstrom.
-
Bei agenten Anfragen sollten Sie Einträge wie die folgenden sehen:
Calling Edge Optimize Origin for agentic requests- Primärer PfadCalling Default Origin in case of failover for agentic requests- Failover-PfadFailover Triggered for agentic requests- Failover-Erkennung von Ursprung und Antwort
Wenn die Protokollgruppe nicht vorhanden ist, überprüfen Sie, ob die IAM-Berechtigungen in Schritt 4 korrekt aktualisiert wurden. Überprüfen Sie auch andere benachbarte AWS-Regionen. Die Edge-Position, an der Ihre Anfrage verarbeitet wurde, kann von der erwarteten Position abweichen.
Fehlerbehebung
x-edgeoptimize-request-id bei Anfragen durch AgentenYOUR_DEFAULT_ORIGIN im CloudFront-Funktionscode korrekt ersetzt wurde (Schritt 2).x-edgeoptimize-api-key-Kopfzeile in den benutzerdefinierten Kopfzeilen der Edge Optimize-Herkunft (Schritt 1).us-east-1.cache-control: no-store0 in Ihrer Cache-Richtlinie (Schritt 3). Wenn die TTL für das Minimum bereits sehr kurz ist, ist dies möglicherweise nicht das Problem.Deaktivieren und erneutes Aktivieren von Optimieren in Edge
Die Funktion Lambda@Edge (edgeoptimize-origin) ist mit den Ursprungsanfrage- und -antwortereignissen Ihres CloudFront-Verhaltens verknüpft. Da der Service bei jeder Anfrage, die dieses Verhalten durchläuft - sowohl bei Personen- als auch bei Agentenanforderungen - inline ausgeführt wird, wirkt sich ein Ausfall von Lambda@Edge auf den gesamten Live-Traffic aus, nicht nur auf die Agentenanforderungen. Wenn Sie einen Ausfall von Lambda@Edge feststellen, entfernen Sie die Funktionsverknüpfungen sofort, um den normalen Traffic-Fluss auf Ihren standardmäßigen Ursprung wiederherzustellen.
So erkennen Sie einen Lambda@Edge-Ausfall
- AWS Service Health Dashboard — Überprüfen Sie das AWS Service Health Dashboard auf aktive Vorfälle, die Amazon CloudFront oder AWS Lambda betreffen. Ein hier gemeldeter globaler oder regionaler Ausfall ist die schnellste Möglichkeit, um zu bestätigen, dass das Problem auf der AWS-Infrastrukturseite und nicht in Ihrer Konfiguration liegt.
- Lambda@Edge errors — Navigieren Sie zu AWS Console > CloudFront > Monitoring > [Ihre Distribution]. Öffnen Sie die Registerkarte Lambda@Edge und überprüfen Sie das Diagramm Ausführungsfehler auf Ausführungsfehler. Wenn diese hoch sind, ist Lambda@Edge möglicherweise nicht verfügbar.
Trennen der Funktion Lambda@Edge
Navigation: AWS Console > CloudFront > Verteilungen > [Ihre Verteilung] > Verhalten
-
Klicken Sie Ihrem auf „Bearbeiten“.
-
Scrollen Sie nach unten zum Abschnitt Funktionszuordnungen .
-
Legen Sie die folgenden Verknüpfungen auf "Verknüpfung“:
table 0-row-2 1-row-2 2-row-2 3-row-2 Ereignis Ändern in Viewer-Anfrage Keine Zuordnung Anfrage zur Herkunft Keine Zuordnung Ursprungsantwort Keine Zuordnung
-
Klicken Sie Änderungen speichern.
-
Warten Sie, bis die Bereitstellung der CloudFront-Verteilung abgeschlossen ist. Der Status ändert sich von Bereitstellung zum Datum der letzten Änderung, in der Regel innerhalb weniger Minuten.
Nach der Bereitstellung werden alle Traffic-Routen direkt zu Ihrem standardmäßigen Ursprung geleitet. Es wird keine Konfiguration gelöscht. Die Lambda-Funktion und ihre Verknüpfungen können jederzeit wiederhergestellt werden.
Erneutes Anhängen der Funktion Lambda@Edge
Navigation: AWS Console > CloudFront > Verteilungen > [Ihre Verteilung] > Verhalten
-
Klicken Sie Ihrem auf „Bearbeiten“.
-
Scrollen Sie nach unten zum Abschnitt Funktionszuordnungen .
-
Stellen Sie die Verknüpfungen wieder her:
table 0-row-2 1-row-2 2-row-2 3-row-2 Ereignis Auf festlegen Viewer-Anfrage edgeoptimize-routing(CloudFront-Funktion)Anfrage zur Herkunft Lambda-ARN mit Versionsangabe aus Schritt 4 Ursprungsantwort Lambda-ARN mit Versionsangabe aus Schritt 4 Verwenden Sie die versionierte Funktion ARN, die Sie in Schritt 4 (in Version veröffentlichen).
-
Klicken Sie Änderungen speichern.
-
Warten Sie, bis die Bereitstellung der Verteilung abgeschlossen ist, und überprüfen Sie dann, ob die Agentenanfragen die
x-edgeoptimize-request-id-Kopfzeile zurückgeben, wie in Schritt 6 beschrieben.
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.