Zwischenspeichern von Inhalten auf der Grundlage von Cookies - Amazon CloudFront

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Zwischenspeichern von Inhalten auf der Grundlage von Cookies

Cookies CloudFront werden von standardmäßig nicht berücksichtigt, wenn Anfragen und Antworten verarbeitet werden oder wenn Sie Ihre Objekte an Edge-Standorten zwischenspeichern. Wenn zwei Anforderungen CloudFront empfängt, die identisch sind, abgesehen von dem, was sich im -CookieHeader befindet, dann CloudFront verwendet die Anforderungen standardmäßig als identisch und gibt dasselbe Objekt für beide Anforderungen zurück.

Sie können so konfigurieren CloudFront , dass einige oder alle Cookies in Viewer-Anforderungen an Ihren Ursprung weitergeleitet werden und separate Versionen Ihrer Objekte auf der Grundlage der Cookie-Werte, die weitergeleitet werden, zwischengespeichert werden. Wenn Sie dies tun, CloudFront verwendet einige oder alle Cookies in Viewer-Anforderungen – je nachdem, welche weitergeleitet werden sollen – um ein Objekt im Cache eindeutig zu identifizieren.

Nehmen wir beispielsweise an, dass Anfragen für locations.html ein country-Cookie enthalten, das entweder den Wert uk oder fr hat. Wenn Sie CloudFront so konfigurieren, dass Ihre Objekte auf der Grundlage des Werts des country Cookies zwischengespeichert werden, CloudFront leitet Anfragen für locations.html an den Ursprung weiter und schließt das country Cookie und seinen Wert ein. Ihr Ursprung gibt zurück und CloudFront speichert das Objekt einmal für Anforderungen locations.htmlzwischen, in denen der Wert des country Cookies ist, uk und einmal für Anforderungen, in denen der Wert istfr.

Wichtig

Amazon S3 und einige HTTP-Server verarbeiten keine Cookies. Konfigurieren Sie nicht CloudFront so, dass Cookies an einen Ursprung weitergeleitet werden, der keine Cookies verarbeitet oder seine Antwort nicht auf der Grundlage von Cookies ändert. Dies kann dazu führen CloudFront , dass mehr Anfragen für dasselbe Objekt an den Ursprung weiterleitet, was die Leistung verlangsamt und die Belastung des Ursprungs erhöht. Wenn Ihr Ursprung unter Berücksichtigung des vorherigen Beispiels das country Cookie nicht verarbeitet oder immer dieselbe Version von locations.html an zurückgibt, CloudFront unabhängig vom Wert des country Cookies, konfigurieren Sie nicht CloudFront so, dass dieses Cookie weitergeleitet wird.

Wenn Ihr benutzerdefinierter Ursprung umgekehrt von einem bestimmten Cookie abhängt oder unterschiedliche Antworten basierend auf einem Cookie sendet, stellen Sie sicher, dass Sie CloudFront so konfigurieren, dass dieses Cookie an den Ursprung weitergeleitet wird. Andernfalls CloudFront entfernt das Cookie, bevor die Anfrage an Ihren Ursprung weitergeleitet wird.

Zum Konfigurieren der Cookie-Weiterleitung aktualisieren Sie das Cache-Verhalten Ihrer Verteilung. Weitere Informationen über Cache-Verhalten finden Sie unter Einstellungen für das Cache-Verhalten, insbesondere in den Abschnitten Cookies weiterleiten und Zulassungslisten-Cookies.

Sie können jedes Cache-Verhalten so konfigurieren, dass eine der folgenden Aktionen ausgeführt wird:

  • Alle Cookies an Ihren Ursprung weiterleiten – CloudFront schließt alle Cookies ein, die vom Betrachter gesendet werden, wenn er Anfragen an den Ursprung weiterleitet. Wenn Ihr Ursprung eine Antwort zurückgibt, CloudFront speichert die Antwort unter Verwendung der Cookie-Namen und -Werte in der Viewer-Anforderung zwischen. Wenn die Ursprungsantwort Set-Cookie Header enthält, CloudFront gibt sie mit dem angeforderten Objekt an den Viewer zurück. speichert CloudFront auch die Set-Cookie Header mit dem vom Ursprung zurückgegebenen Objekt im Cache und sendet diese Set-Cookie Header an Viewer bei allen Cache-Treffern.

  • Weiterleiten eines Satzes von Cookies, die Sie angeben – CloudFront entfernt alle Cookies, die der Viewer sendet und die nicht auf der Zulassungsliste stehen, bevor er eine Anfrage an den Ursprung weiterleitet. CloudFront speichert die Antwort unter Verwendung der aufgelisteten Cookie-Namen und -Werte in der Viewer-Anfrage. Wenn die Ursprungsantwort Set-Cookie Header enthält, CloudFront gibt sie mit dem angeforderten Objekt an den Viewer zurück. speichert CloudFront auch die Set-Cookie Header mit dem vom Ursprung zurückgegebenen Objekt im Cache und sendet diese Set-Cookie Header an Viewer bei allen Cache-Treffern.

    Weitere Informationen zum Angeben von Platzhaltern in Cookie-Namen finden Sie unter Zulassungslisten-Cookies.

    Informationen zum aktuellen Kontingent für die Anzahl von Cookie-Namen, die Sie für jedes Cache-Verhalten weiterleiten können, oder zum Anfordern eines höheren Kontingents finden Sie unter Kontingente für Abfragezeichenfolgen (Legacy-Cache-Einstellungen).

  • Keine Cookies an Ihren Ursprung weiterleiten – CloudFront speichert Ihre Objekte nicht auf der Grundlage von Cookies zwischen, die vom Viewer gesendet werden. Außerdem entfernt CloudFront Cookies, bevor Anfragen an Ihren Ursprung weitergeleitet werden, und entfernt Set-Cookie-Header aus Antworten, bevor Antworten an Ihre Betrachter zurückgegeben werden.

Beachten Sie die folgenden Informationen zur Angabe des Cookies, das Sie weiterleiten möchten:

Zugriffsprotokolle

Wenn Sie CloudFront so konfigurieren, dass Anfragen und Cookies protokolliert werden, CloudFront protokolliert alle Cookies und alle Cookie-Attribute, auch wenn Sie so konfigurieren, dass CloudFront keine Cookies an Ihren Ursprung weitergeleitet werden, oder wenn Sie CloudFront so konfigurieren, dass nur bestimmte Cookies weitergeleitet werden. Weitere Informationen zur CloudFront Protokollierung finden Sie unter Konfigurieren und Verwenden von Standardprotokollen (Zugriffsprotokolle).

Groß-/Kleinschreibung

Bei Cookie-Namen und -Werten muss die Groß-/Kleinschreibung beachtet werden. Wenn beispielsweise so konfiguriert CloudFront ist, dass alle Cookies weitergeleitet werden, und zwei Betrachteranfragen für dasselbe Objekt Cookies haben, die mit Ausnahme der Groß- und Kleinschreibung identisch sind, CloudFront speichert das Objekt zweimal zwischen.

CloudFront sortiert Cookies

Wenn so konfiguriert CloudFront ist, dass Cookies (alle oder eine Teilmenge) weitergeleitet werden, CloudFront sortiert die Cookies in natürlicher Reihenfolge nach Cookie-Namen, bevor die Anfrage an Ihren Ursprung weitergeleitet wird.

If-Modified-Since und If-None-Match

If-Modified-Since If-None-Match Bedingte Anforderungen und werden nicht unterstützt, wenn so konfiguriert CloudFront ist, dass Cookies (alle oder eine Teilmenge) weitergeleitet werden.

Standard-Name-Wert-Paar-Format erforderlich

CloudFront leitet einen Cookie-Header nur weiter, wenn der Wert dem Standard-Name-Wert-Paarformat entspricht, zum Beispiel: "Cookie: cookie1=value1; cookie2=value2"

Deaktivieren der Zwischenspeicherung von Set-Cookie-Headern

Wenn so konfiguriert CloudFront ist, dass Cookies an den Ursprung (alle oder bestimmte Cookies) weitergeleitet werden, werden auch die Set-Cookie Header zwischengespeichert, die in der Ursprungsantwort empfangen wurden. CloudFront schließt diese Set-Cookie Header in seine Antwort an den ursprünglichen Betrachter ein und schließt sie auch in nachfolgende Antworten ein, die vom CloudFront Cache bereitgestellt werden.

Wenn Sie Cookies an Ihrem Ursprung erhalten möchten, aber die Set-Cookie Header in den Antworten Ihres Ursprungs nicht CloudFront zwischenspeichern möchten, konfigurieren Sie Ihren Ursprung so, dass ein Cache-Control Header mit einer -no-cacheRichtlinie hinzugefügt wird, die Set-Cookie als Feldnamen angibt. Beispiel: Cache-Control: no-cache="Set-Cookie". Weitere Informationen finden Sie unter Response Cache-Control-Direktiven im Hypertext Transfer Protocol (HTTP/1.1): Caching Standard.

Maximallänge von Cookie-Namen

Wenn Sie CloudFront so konfigurieren, dass bestimmte Cookies an Ihren Ursprung weitergeleitet werden, darf die Gesamtzahl der Bytes in allen Cookie-Namen, die Sie CloudFront für die Weiterleitung konfigurieren, 512 minus der Anzahl der Cookies, die Sie weiterleiten, nicht überschreiten. Wenn Sie beispielsweise CloudFront so konfigurieren, dass 10 Cookies an Ihren Ursprung weitergeleitet werden, darf die kombinierte Länge der Namen der 10 Cookies 502 Byte (512–10) nicht überschreiten.

Wenn Sie CloudFront so konfigurieren, dass alle Cookies an Ihren Ursprung weitergeleitet werden, spielt die Länge der Cookie-Namen keine Rolle.

Informationen zur Verwendung der CloudFront Konsole zum Aktualisieren einer Verteilung, um Cookies an den Ursprung CloudFront weiterzuleiten, finden Sie unter Aktualisieren einer Verteilung. Informationen zur Verwendung der CloudFront API zum Aktualisieren einer Verteilung finden Sie unter UpdateDistribution in der Amazon CloudFront -API-Referenz.