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.
So CloudFront verarbeitet und speichert HTTP-Statuscodes 4xx und 5xx von Ihrem Ursprung
Themen
Wenn ein Objekt von Ihrem Amazon S3-Bucket oder benutzerdefinierten Ursprungsserver CloudFront anfordert, gibt Ihr Ursprung manchmal einen HTTP-Statuscode 4xx oder 5xx zurück, der angibt, dass ein Fehler aufgetreten ist. CloudFront Verhalten hängt von Folgendem ab:
Ob Sie benutzerdefinierte Fehlerseiten konfiguriert haben
Ob Sie konfiguriert haben, wie lange Sie Fehlerantworten von Ihrem Ursprung zwischenspeichern möchten (Mindest-TTL CloudFront für die Zwischenspeicherung von Fehlern).
Welcher Statuscode gesendet wird
Bei 5xx-Statuscodes, ob sich das angeforderte Objekt derzeit im CloudFront Edge-Cache befindet.
(Bei einigen 4xx-Statuscodes) Ob der Ursprung einen
Cache-Control max-age
- oder einenCache-Control s-maxage
-Header zurückgibt.
CloudFront speichert Antworten auf - GET
und -HEAD
Anforderungen immer zwischen. Sie können auch so konfigurieren CloudFront , dass Antworten auf OPTIONS
requests. CloudFront does nicht auf Anfragen zwischengespeichert werden, die die anderen Methoden verwenden.
Wenn der Ursprung nicht reagiert, läuft die CloudFront Anfrage an den Ursprung ab, was als HTTP 5xx-Fehler vom Ursprung angesehen wird, obwohl der Ursprung nicht mit diesem Fehler geantwortet hat. In diesem Szenario CloudFront stellt weiterhin zwischengespeicherte Inhalte bereit. Weitere Informationen finden Sie unter Ursprung nicht verfügbar.
Wenn Sie die Protokollierung aktiviert haben, CloudFront schreibt die Ergebnisse unabhängig vom HTTP-Statuscode in die Protokolle.
Weitere Informationen zu Funktionen und Optionen, die sich auf die von zurückgegebene Fehlermeldung beziehen CloudFront, finden Sie im Folgenden:
Informationen zu den Einstellungen für benutzerdefinierte Fehlerseiten in der CloudFront Konsole finden Sie unter Benutzerdefinierte Fehlerseiten und Zwischenspeicherung von Fehlern.
Informationen zur Mindest-TTL für die Zwischenspeicherung von Fehlern in der CloudFront Konsole finden Sie unter Mindest-TTL für die Zwischenspeicherung von Fehlern (Sekunden).
Eine Liste der HTTP-Statuscodes, die CloudFront zwischenspeichert, finden Sie unter HTTP-Statuscodes 4xx und 5xx, die CloudFront zwischenspeichert.
So CloudFront verarbeitet Fehler, wenn Sie benutzerdefinierte Fehlerseiten konfiguriert haben
Wenn Sie benutzerdefinierte Fehlerseiten konfiguriert haben, hängt CloudFront das Verhalten davon ab, ob sich das angeforderte Objekt im Edge-Cache befindet.
Das angeforderte Objekt ist nicht im Edge-Cache vorhanden
CloudFront versucht weiterhin, das angeforderte Objekt von Ihrem Ursprung abzurufen, wenn alle der folgenden Bedingungen erfüllt sind:
Ein Viewer fordert ein Objekt an.
Das Objekt ist nicht im Edge-Cache vorhanden.
Ihr Ursprungsserver gibt einen HTTP-Statuscode 4xx oder 5xx zurück und eines der Folgenden ist wahr:
Ihr Ursprungsserver gibt einen HTTP-Statuscode 5xx anstelle eines Statuscodes 304 (nicht geändert) oder eine aktualisierte Version des Objekts zurück.
Ihr Ursprungs-Server gibt einen HTTP-Statuscode 4xx zurück, der nicht durch einen Cache-Control-Header eingeschränkt und in der folgenden Statuscodeliste enthalten is: HTTP-Statuscodes 4xx und 5xx, die CloudFront immer zwischenspeichert.
Ihr Ursprungs-Server gibt einen HTTP-Statuscode 4xx ohne
Cache-Control max-age
- oderCache-Control s-maxage
-Header zurück und der Statuscode ist in der folgenden Statuscodeliste enthalten: HTTP-Statuscodes 4xx, die CloudFront basierend auf Cache-Control Headern zwischenspeichert.
CloudFront führt Folgendes aus:
-
Im CloudFront Edge-Cache, der die Viewer-Anforderung erhalten hat, CloudFront überprüft Ihre Verteilungskonfiguration und ruft den Pfad der benutzerdefinierten Fehlerseite ab, die dem Statuscode entspricht, den Ihr Ursprung zurückgegeben hat.
-
CloudFront findet das erste Cache-Verhalten in Ihrer Verteilung, das ein Pfadmuster hat, das dem Pfad der benutzerdefinierten Fehlerseite entspricht.
-
Der CloudFront Edge-Standort sendet eine Anforderung für die benutzerdefinierte Fehlerseite an den Ursprung, der im Cache-Verhalten angegeben ist.
-
Der Ursprungsserver gibt die benutzerdefinierte Fehlerseite an den Edge-Standort zurück.
-
CloudFront gibt die benutzerdefinierte Fehlerseite an den Betrachter zurück, der die Anforderung gestellt hat, und speichert die benutzerdefinierte Fehlerseite für das Maximum der folgenden Werte zwischen:
Der Zeitraum, der durch die Mindest-TTL für die Zwischenspeicherung von Fehlern angegeben ist (standardmäßig zehn Sekunden)
Der Zeitraum, der durch einen
Cache-Control max-age
- oder einenCache-Control s-maxage
-Header angegeben ist, der vom Ursprungsserver zurückgegeben wird, wenn die erste Anfrage den Fehler generiert hat
-
Nachdem die Caching-Zeit (in Schritt 5 festgelegt) abgelaufen ist, CloudFront versucht erneut, das angeforderte Objekt abzurufen, indem eine weitere Anfrage an Ihren Ursprung weitergeleitet wird. CloudFront setzt den Wiederholungsversuch in Intervallen fort, die durch die Mindest-TTL für die Zwischenspeicherung von Fehlern angegeben sind.
Das angeforderte Objekt ist im Edge-Cache vorhanden
CloudFront stellt weiterhin das Objekt bereit, das sich derzeit im Edge-Cache befindet, wenn alle der folgenden Bedingungen erfüllt sind:
Ein Viewer fordert ein Objekt an.
Das Objekt ist im Edge-Cache vorhanden, aber es ist abgelaufen.
Ihr Ursprungsserver gibt einen HTTP-Statuscode 5xx anstelle eines Statuscodes 304 (nicht geändert) oder eine aktualisierte Version des Objekts zurück.
CloudFront führt Folgendes aus:
-
Wenn Ihr Ursprung einen 5xx-Statuscode zurückgibt, CloudFront stellt das Objekt bereit, auch wenn es abgelaufen ist. Für die Dauer der Mindest-TTL für die Zwischenspeicherung von Fehlern antwortet CloudFront weiterhin auf Betrachteranfragen, indem das Objekt aus dem Edge-Cache bereitgestellt wird.
Wenn Ihr Ursprungsserver einen 4xx-Statuscode zurückgibt, sendet CloudFront den Statuscode anstelle des angeforderten Objekts an den Betrachter.
-
Nachdem die Mindest-TTL für die Zwischenspeicherung von Fehlern abgelaufen ist, CloudFront versucht erneut, das angeforderte Objekt abzurufen, indem es eine weitere Anfrage an Ihren Ursprung weiterleitet. Beachten Sie, dass, wenn das Objekt nicht häufig angefordert wird, es möglicherweise aus dem Edge-Cache CloudFront bereinigt, während Ihr Ursprungsserver immer noch 5xx-Antworten zurückgibt. Informationen darüber, wie lange Objekte in CloudFront Edge-Caches zwischengespeichert werden, finden Sie unter Verwalten der Dauer, die Inhalte im Cache bleiben (Ablauf).
So CloudFront verarbeitet Fehler, wenn Sie keine benutzerdefinierten Fehlerseiten konfiguriert haben
Wenn Sie keine benutzerdefinierten Fehlerseiten konfiguriert haben, hängt CloudFront das Verhalten davon ab, ob sich das angeforderte Objekt im Edge-Cache befindet.
Das angeforderte Objekt ist nicht im Edge-Cache vorhanden
CloudFront versucht weiterhin, das angeforderte Objekt von Ihrem Ursprung abzurufen, wenn alle der folgenden Bedingungen erfüllt sind:
Ein Viewer fordert ein Objekt an.
Das Objekt ist nicht im Edge-Cache vorhanden.
Ihr Ursprungsserver gibt einen HTTP-Statuscode 4xx oder 5xx zurück und eines der Folgenden ist wahr:
Ihr Ursprungsserver gibt einen HTTP-Statuscode 5xx anstelle eines Statuscodes 304 (nicht geändert) oder eine aktualisierte Version des Objekts zurück.
Ihr Ursprungs-Server gibt einen HTTP-Statuscode 4xx zurück, der nicht durch einen Cache-Control-Header eingeschränkt und in der folgenden Statuscodeliste enthalten is: HTTP-Statuscodes 4xx und 5xx, die CloudFront immer zwischenspeichert
Ihr Ursprungs-Server gibt einen HTTP-Statuscode 4xx ohne
Cache-Control max-age
- oderCache-Control s-maxage
-Header zurück und der Statuscode ist in der folgenden Statuscodeliste enthalten: HTTP-Statuscodes 4xx, die CloudFront basierend auf Cache-Control Headern zwischenspeichert.
CloudFront führt Folgendes aus:
-
CloudFront gibt den Statuscode 4xx oder 5xx an den Viewer zurück und speichert auch Statuscode im Edge-Cache zwischen, der die Anforderung für das Maximum der folgenden Werte erhalten hat:
Der Zeitraum, der durch die Mindest-TTL für die Zwischenspeicherung von Fehlern angegeben ist (standardmäßig zehn Sekunden)
Der Zeitraum, der durch einen
Cache-Control max-age
- oder einenCache-Control s-maxage
-Header angegeben ist, der vom Ursprungsserver zurückgegeben wird, wenn die erste Anfrage den Fehler generiert hat
Für die Dauer der Caching-Zeit (festgelegt in Schritt 1) CloudFront reagiert auf nachfolgende Betrachteranfragen für dasselbe Objekt mit dem zwischengespeicherten 4xx- oder 5xx-Statuscode.
-
Nach Ablauf der Caching-Zeit (festgelegt in Schritt 1) CloudFront versucht erneut, das angeforderte Objekt abzurufen, indem eine weitere Anfrage an Ihren Ursprung weitergeleitet wird. CloudFront setzt den Wiederholungsversuch in Intervallen fort, die durch die Mindest-TTL für die Zwischenspeicherung von Fehlern angegeben sind.
Das angeforderte Objekt ist im Edge-Cache vorhanden
CloudFront stellt weiterhin das Objekt bereit, das sich derzeit im Edge-Cache befindet, wenn alle der folgenden Bedingungen erfüllt sind:
Ein Viewer fordert ein Objekt an.
Das Objekt ist im Edge-Cache vorhanden, aber es ist abgelaufen.
Ihr Ursprungsserver gibt einen HTTP-Statuscode 5xx anstelle eines Statuscodes 304 (nicht geändert) oder eine aktualisierte Version des Objekts zurück.
CloudFront führt Folgendes aus:
Wenn Ihr Ursprung einen 5xx-Fehlercode zurückgibt, CloudFront stellt das Objekt bereit, auch wenn es abgelaufen ist. Während der Mindest-TTL für die Zwischenspeicherung von Fehlern (standardmäßig 10 Sekunden) antwortet CloudFront weiterhin auf Betrachteranfragen, indem das Objekt aus dem Edge-Cache bereitgestellt wird.
Wenn Ihr Ursprungsserver einen 4xx-Statuscode zurückgibt, sendet CloudFront den Statuscode anstelle des angeforderten Objekts an den Betrachter.
Nachdem die Mindest-TTL für die Zwischenspeicherung von Fehlern abgelaufen ist, CloudFront versucht erneut, das angeforderte Objekt abzurufen, indem es eine weitere Anfrage an Ihren Ursprung weiterleitet. Beachten Sie, dass, wenn das Objekt nicht häufig angefordert wird, es möglicherweise aus dem Edge-Cache CloudFront bereinigt, während Ihr Ursprungsserver immer noch 5xx-Antworten zurückgibt. Informationen darüber, wie lange Objekte in CloudFront Edge-Caches zwischengespeichert werden, finden Sie unter Verwalten der Dauer, die Inhalte im Cache bleiben (Ablauf).
HTTP-Statuscodes 4xx und 5xx, die CloudFront zwischenspeichert
CloudFront speichert die von Ihrem Ursprung zurückgegebenen HTTP-Statuscodes 4xx und 5xx zwischen, abhängig vom spezifischen Statuscode, der zurückgegeben wird, und davon, ob Ihr Ursprung bestimmte Header in der Antwort zurückgibt.
HTTP-Statuscodes 4xx und 5xx, die CloudFront immer zwischenspeichert
CloudFront speichert immer die folgenden HTTP-Statuscodes 4xx und 5xx zwischen, die von Ihrem Ursprung zurückgegeben werden. Wenn Sie eine benutzerdefinierte Fehlerseite für einen HTTP-Statuscode konfiguriert haben, CloudFront speichert die benutzerdefinierte Fehlerseite zwischen.
404 |
Not Found |
414 |
Anfrage-URI zu lang |
500 |
Internal Server Error |
501 |
Nicht implementiert |
502 |
Bad Gateway |
503 |
Service nicht verfügbar |
504 |
Gateway-Timeout |
HTTP-Statuscodes 4xx, die CloudFront basierend auf Cache-Control
Headern zwischenspeichert
CloudFront speichert nur die folgenden HTTP-Statuscodes 4xx zwischen, die von Ihrem Ursprung zurückgegeben werden, wenn Ihr Ursprung einen - Cache-Control max-age
oder -Cache-Control s-maxage
Header zurückgibt. Wenn Sie eine benutzerdefinierte Fehlerseite für einen dieser HTTP-Statuscodes konfiguriert haben – und Ihr Ursprung einen der Cache-Control-Header zurückgibt – speichert die benutzerdefinierte Fehlerseite CloudFront zwischen.
400 |
Inkorrekte Anfrage |
403 |
Forbidden |
405 |
Method Not Allowed |
412 |
Vorbedingung fehlgeschlagen |
415 |
Unsupported Media Type (Nicht unterstützter Medientyp) |