Wie behebe ich CloudFront-Fehler "503 Service Unavailable"?
Bei meiner Amazon CloudFront-Distribution ist ein Fehler "503 Service Unavailable" aufgetreten.
Lösung
Gehe für den Fehler wie folgt vor, um einen HTTP 503 status code (Service Unavailable) zu beheben.
HTTP 503-Fehler für den Ursprungsserver
Wenn auf dem Ursprungsserver Leistungsprobleme auftreten oder der Server nicht verfügbar ist, erhältst du möglicherweise den Fehler "503 Service Unavailable".
Informationen zur Behebung dieses Problems findest du unter Der Ursprungsserver hat nicht genug Kapazität, um die Anforderungsrate zu unterstützen.
HTTP 503-Fehler mit Lambda @Edge oder der CloudFront-Funktion
Wenn die AWS Lambda-Funktion unbehandelte Ausnahmen oder Fehler im Code enthält, erhältst du möglicherweise den Fehler "503 Service Unavailable".
Um den Code zu korrigieren, füge den Lambda-Funktionen-Protokollierungsanweisungen hinzu. Überprüfe die Lambda @Edge-Protokolle und CloudFront Functions-Protokolle, um sicherzustellen, dass CloudFront ordnungsgemäß funktioniert. Weitere Informationen findest du unter Beheben von Aufrufproblemen in Lambda und Beheben von Ausführungsproblemen in Lambda.
Wenn du ein Lambda @Edge-Kontingent überschreitest, blockiert Lambda die Ausführung der Lambda-Funktion und CloudFront gibt einen HTTP 503-Fehler zurück. Informationen zum Beheben eines HTTP 503-Fehlers aufgrund überschrittener Kontingente findest du unter Wie behebe ich 502- und 503-Fehler, die durch Lambda @Edge -Funktionen in CloudFront verursacht wurden?
HTTP 503-Fehler mit Amazon S3
Wenn du Anwendungen integriert hast oder der Ursprung bei Amazon Simple Storage Service (Amazon S3) liegt, erhältst du möglicherweise einen HTTP 500- oder 503-Fehler. Informationen zur Behebung dieser Fehler findest du unter Wie behebe ich einen HTTP-500-Fehler oder HTTP-503-Fehler bei Amazon S3?
Verhindern, dass CloudFront HTTP 503-Fehler zwischenspeichert
CloudFront leitet Fehlerantworten vom Ursprung standardmäßig an den Client weiter. CloudFront speichert die Fehlerantwort des Ursprungs 10 Sekunden lang im Cache.
Wenn die Fehlerantwort des Ursprungs einen Cache-Control-Header enthält, speichert CloudFront den Fehler mit der entsprechenden Gültigkeitsdauer (TTL) statt der standardmäßigen 10 Sekunden im Cache. CloudFront speichert seine eigenen Fehlerantworten nicht, sofern in einer benutzerdefinierten Fehlerantwort nichts gegensätzliches festgelegt ist. Du kannst eine benutzerdefinierte Fehlerantwort erstellen, für HTTP 503-Fehler mit einer TTL von 0 Sekunden, um zu verhindern, dass CloudFront den Fehler zwischenspeichert.
Verwende die CachingOptimized-Richtlinie, um die Cache-Effizienz zu optimieren. Diese Richtlinie legt einen niedrigeren TTL-Mindestwert von 1 Sekunde für Fehlerantworten statt des Standardwerts von 10 Sekunden fest. Weitere Informationen findest du unter Verwenden von Richtlinien für verwaltete Caches.
Es hat sich bewährt, Wiederholungslogik in den Anwendungen einzubauen, um Anfragen, die einen HTTP 503-Fehler zurückgeben, erneut zu versuchen. Alle AWS-SDKs verfügen über einen integrierten Wiederholungsmechanismus mit einem Algorithmus, der exponentiellen Backoff verwendet. Dieser Algorithmus implementiert immer längere Wartezeiten zwischen Wiederholungsversuchen für aufeinanderfolgende Fehlerantworten. Viele exponentielle Backoff-Algorithmen verwenden Jitter (randomisierte Verzögerung), um aufeinanderfolgende Kollisionen zu verhindern. Weitere Informationen findest du unter Verhalten bei Wiederholungen.
- Sprache
- Deutsch

Relevanter Inhalt
AWS OFFICIALAktualisiert vor einem Jahr
AWS OFFICIALAktualisiert vor 5 Jahren
AWS OFFICIALAktualisiert vor 6 Monaten