Ich möchte die 502- und 503-Fehler beheben, die ich erhalte, wenn ich eine AWS-Lambda@Edge-Funktion mit einer Amazon-CloudFront-Verteilung verknüpfe.
Lösung
Die Lambda@Edge-Funktion gibt einen 502-Fehler zurück
Der Fehler „502" tritt auf, wenn die Lambda@Edge-Funktion eine falsch formatierte Antwort zurückgibt oder die Lambda@Edge-Funktion Inhalte enthält, die ungültig sind. Die Objektstruktur der Antwort muss mit der Lambda@Edge-Ereignisstruktur übereinstimmen.
Gehe wie folgt vor, um den Fehler „502“ zu beheben:
- Stelle sicher, dass die Lambda@Edge-Funktion ein gültiges JSON-Objekt zurückgibt.
- Stelle sicher, dass die Antwort je nach Ereignistyp alle erforderlichen Felder enthält.
- Prüfe, ob die Objekte in der Antwort gültig sind und die erwartete Struktur befolgen.
- Prüfe, ob die Edge-Funktion einen unzulässigen HTTP-Header hinzugefügt hat.
- Entferne schreibgeschützte Header.
- Stelle sicher, dass die Lambda@Edge-Funktion die Größe des Anforderungstexts von 1 MB für Ursprungsanforderungsereignisse oder 40 KB für Viewer-Anforderungsereignisse nicht überschreitet.
- Suche in den Antwortfeldern nach ungültigen Zeichen oder Werten.
Weitere Informationen findest du unter Testen und Debuggen von Lambda@Edge-Funktionen und Einschränkungen auf Lambda@Edge.
Die Lambda@Edge-Funktion gibt einen 503-Fehler zurück
Der Fehler „503" tritt auf, wenn der Funktionscode unbehandelte Ausnahmen oder Fehler enthält.
Um dieses Problem zu beheben, füge der Lambda@Edge-Funktion Protokollierungsanweisungen hinzu, z. B. console.log()), um sie in Amazon CloudWatch Logs zu schreiben. Überprüfe die CloudWatch-Protokolle in der AWS-Region, in der CloudFront die Funktion ausführt.
Weitere Informationen findest du unter Vier Schritte zum Debuggen der Inhaltsbereitstellung auf AWS und Beheben von Ausführungsproblemen in Lambda.
Lambda blockiert die Funktionsausführung, wenn du das Lambda@Edge-Kontingent überschreitest. Überprüfe die Lambda@Edge-CloudWatch-Metriken auf Probleme, wie z. B. überschrittene gleichzeitige Ausführungen in jeder AWS-Region und überschrittene Funktionen.