Auf Cookies basierender Inhalt zwischenspeichern - 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.

Auf Cookies basierender Inhalt zwischenspeichern

Standardmäßig werden Cookies bei der Verarbeitung von Anfragen und Antworten oder beim Zwischenspeichern Ihrer Objekte an Edge-Standorten CloudFront nicht berücksichtigt. Wenn zwei Anfragen CloudFront empfangen werden, die bis auf das, was im Cookie Header steht, identisch sind, werden die Anfragen standardmäßig als identisch CloudFront behandelt und für beide Anfragen dasselbe Objekt zurückgegeben.

Sie können so konfigurieren CloudFront , dass einige oder alle Cookies in Viewer-Anfragen an Ihren Ursprung weitergeleitet werden und dass separate Versionen Ihrer Objekte auf der Grundlage der weitergeleiteten Cookie-Werte zwischengespeichert werden. Wenn Sie dies tun, CloudFront verwendet einige oder alle Cookies in Viewer-Anfragen — unabhängig davon, welche Cookies für die Weiterleitung konfiguriert sind —, 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 so konfigurieren CloudFront , dass Ihre Objekte auf der Grundlage des Werts des Cookies zwischengespeichert werden, CloudFront leitet Anfragen für locations.html an den Ursprung weiter und schließt das country Cookie und seinen Wert ein. country Ihr Ursprung kehrt zurück und CloudFront speichert das Objekt einmal für Anfragenlocations.html, in denen sich der Wert des country Cookies befindet, uk und einmal für Anfragen, in denen sich der Wert befindet. fr

Wichtig

Amazon S3 und einige HTTP Server verarbeiten keine Cookies. Konfigurieren Sie nicht CloudFront , dass Cookies an eine Quelle weitergeleitet werden, die keine Cookies verarbeitet oder ihre Reaktion nicht anhand von Cookies variiert. Dies kann CloudFront dazu führen, dass mehr Anfragen für dasselbe Objekt an den Ursprung weitergeleitet werden, was die Leistung verlangsamt und die Belastung des Ursprungs erhöht. Wenn Sie das vorherige Beispiel berücksichtigen und Ihr Ursprung das country Cookie nicht verarbeitet oder CloudFront unabhängig vom Wert des Cookies immer dieselbe Version von locations.html zurückgibt, konfigurieren Sie es nicht so, dass dieses Cookie CloudFront weitergeleitet wird. country

Wenn Ihre benutzerdefinierte Herkunft dagegen von einem bestimmten Cookie abhängt oder auf der Grundlage eines Cookies unterschiedliche Antworten sendet, stellen Sie sicher, dass Sie dieses Cookie so konfigurieren, dass dieses Cookie CloudFront an den Ursprung weitergeleitet wird. Andernfalls wird das Cookie CloudFront entfernt, bevor die Anfrage an Ihren Absender 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 der Betrachter sendet, wenn er Anfragen an den Ursprung weiterleitet. Wenn Ihr Absender eine Antwort zurückgibt, CloudFront speichert er die Antwort unter Verwendung der Cookie-Namen und -Werte in der Viewer-Anfrage im Cache. Wenn die ursprüngliche Antwort Set-Cookie Header enthält, werden diese zusammen mit dem angeforderten Objekt an den Betrachter CloudFront zurückgegeben. CloudFront speichert auch die Set-Cookie Header mit dem vom Ursprung zurückgegebenen Objekt im Cache und sendet diese Set-Cookie Header bei allen Cache-Treffern an die Betrachter.

  • Leiten Sie eine von Ihnen angegebene Gruppe von Cookies weiter — CloudFront entfernt alle Cookies, die der Betrachter sendet und die nicht auf der Zulassungsliste stehen, bevor eine Anfrage an den Ursprung weitergeleitet wird. CloudFront speichert die Antwort unter Verwendung der Namen und Werte der Cookies, die in der Viewer-Anfrage aufgeführt sind. Wenn die ursprüngliche Antwort Set-Cookie Header enthält, werden diese zusammen mit dem angeforderten Objekt an den Viewer CloudFront zurückgegeben. CloudFront speichert auch die Set-Cookie Header mit dem vom Ursprung zurückgegebenen Objekt im Cache und sendet diese Set-Cookie Header bei allen Cache-Treffern an die Betrachter.

    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).

  • Leiten Sie keine Cookies an Ihren Ursprung weiter — Ihre Objekte werden CloudFront nicht auf der Grundlage eines vom Betrachter gesendeten Cookies zwischengespeichert. Außerdem CloudFront werden Cookies entfernt, bevor Anfragen an Ihren Absender weitergeleitet werden, und entfernt Set-Cookie Header aus Antworten, bevor Antworten an Ihre Zuschauer zurückgegeben werden. Da dies keine optimale Art ist, deine ursprünglichen Ressourcen zu nutzen, solltest du bei der Auswahl dieses Cache-Verhaltens sicherstellen, dass deine Herkunft standardmäßig keine Cookies in den ursprünglichen Antworten enthält.

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

Zugriffsprotokolle

Wenn Sie das Protokollieren von Anfragen und das CloudFront Protokollieren von Cookies konfigurieren CloudFront , werden alle Cookies und alle Cookie-Attribute protokolliert, auch wenn Sie so konfigurieren, dass Cookies CloudFront nicht an Ihren Ursprung weitergeleitet werden oder wenn Sie konfigurieren CloudFront , dass nur bestimmte Cookies weitergeleitet werden. Weitere Informationen zur CloudFront Protokollierung finden Sie unterStandardprotokolle (Zugriffsprotokolle) konfigurieren und verwenden.

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 Viewer-Anfragen für dasselbe Objekt Cookies enthalten, die bis auf die Groß- und Kleinschreibung identisch sind, wird das Objekt zweimal CloudFront zwischengespeichert.

CloudFront sortiert Cookies

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

Anmerkung

Cookie-Namen, die mit dem $ Zeichen beginnen, werden nicht unterstützt. CloudFront entfernt das Cookie, bevor die Anfrage an den Ursprung weitergeleitet wird. Sie können das $ Zeichen entfernen oder ein anderes Zeichen am Anfang des Cookie-Namens angeben.

If-Modified-Since und If-None-Match

If-Modified-Sinceund If-None-Match bedingte Anfragen werden nicht unterstützt, wenn die Konfiguration so konfiguriert CloudFront ist, dass Cookies (alle oder ein Teil davon) weitergeleitet werden.

Standard-Name-Wert-Paar-Format erforderlich

CloudFront leitet einen Cookie-Header nur weiter, wenn der Wert dem Standardformat für Name-Wert-Paare entspricht, zum Beispiel: "Cookie: cookie1=value1; cookie2=value2"

Deaktivieren der Zwischenspeicherung von Set-Cookie-Headern

Wenn CloudFront es so konfiguriert ist, dass es Cookies an den Ursprung weiterleitet (unabhängig davon, ob es sich um alle oder um bestimmte Cookies handelt), speichert es auch die in der ursprünglichen Antwort empfangenen Set-Cookie Header im Cache. CloudFront schließt diese Set-Cookie Header in die Antwort an den ursprünglichen Betrachter ein und schließt sie auch in nachfolgende Antworten ein, die aus dem Cache bereitgestellt werden. CloudFront

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

Maximallänge von Cookie-Namen

Wenn Sie so konfigurieren CloudFront , dass bestimmte Cookies an Ihren Ursprung weitergeleitet werden, darf die Gesamtzahl der Byte in allen Cookie-Namen, die Sie für die Weiterleitung konfigurieren CloudFront , 512 Byte abzüglich der Anzahl der Cookies, die Sie weiterleiten, nicht überschreiten. Wenn Sie beispielsweise so konfigurieren, CloudFront 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 so konfigurieren CloudFront , 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 Distribution, sodass Cookies an den Ursprung CloudFront weitergeleitet werden, finden Sie unterEine Verteilung aktualisieren. Informationen zur Verwendung von CloudFront API zur Aktualisierung einer Distribution finden Sie UpdateDistributionin der CloudFront APIAmazon-Referenz.