2016-05-04 5 views
5

Verwendet CloudFront Cache-Control Header (z. B. max-age) in Fehlerantworten (z. B. 503) vom Ursprung? Oder wird die Länge der Zwischenspeicherung von Fehlerantworten immer von der für die Verteilung konfigurierten Fehler-Caching-Mindest-TTL gesteuert? Die Einbeziehung des Wortes "Minimum" deutet darauf hin, dass das Verhalten des Fehler-Cachings dem Verhalten des nicht fehlerhaften Caching ähnelt, wenn der Ursprung bereitstellt, aber die Dokumentation zu diesem Thema scheint diesen Vorschlag nicht ausdrücklich zu bestätigen.Verwendet CloudFront Cache-Control-Header in Fehlerantworten (z. B. 503) vom Ursprung?

Antwort

2

CloudFront berücksichtigt die Header in Fehlerantworten von Webherkunft, wenn und wenn sie größer sind als die Fehler-Caching-Mindest-TTL (die standardmäßig fünf Minuten beträgt).

Wenn der Ursprung einen max-age einstellt, der kleiner ist als die Fehler-Caching-Mindest-TTL, speichert CloudFront die Antwort für die Fehler-Caching-Minimum-TTL, übergibt jedoch den vom Ursprung festgelegten max-age ungestört an den Client.

Und falls der Ursprung Cache-Control-must-revalidate,no-cache,no-store setzt, speichert die Antwort Cloudfront für die Fehler Caching Minimum TTL aber übergibt den Cache-Control Header durch den Ursprung gesetzt auf dem Client ungestört.

Der Fehler Caching Minimum TTL kann 400, 403, 404, 405, 414, 416, 500, 501, 502, 503 und 504 für Fehlercodes angepasst werden. Es kann nicht für alle unterstützten Fehlercodes gleichzeitig angepasst werden. Es muss für jeden Fehlercode separat angepasst werden. Dies geschieht durch Erstellen einer "benutzerdefinierten Fehlerreaktion". Etwas verwirrend, erfordert dies nicht, dass Sie eine benutzerdefinierte Fehlerseite bereitstellen. Beim Erstellen der benutzerdefinierten Fehlerantwort können Sie "Nein" auswählen, um "Fehlerreaktion anpassen" (das klingt wie Unsinn, aber es ist wahr). Wenn Sie dies tun, passen Sie nur die Fehler-Caching-Mindest-TTL für den von Ihnen ausgewählten HTTP-Fehlercode an.