Cloudflare Error 520: Bedeutung und so behebst du den Fehler

Advertisement
Was ist Cloudflare Error 520?
Error 520 ist einer von Cloudflares eigenen Statuscodes. Auf der Seite steht „Web server is returning an unknown error“ mit Error code 520, dazu eine Ray ID und drei Kästen: dein Browser (funktioniert), Cloudflare (funktioniert) und der Host (Fehler).
Die Cloudflare-Dokumentation definiert ihn so: Der Origin-Server gibt eine leere, unbekannte oder unerwartete Antwort an Cloudflare zurück. Mit anderen Worten: Cloudflare hat sich mit dem eigentlichen Server der Website (dem Origin) verbunden, aber was zurückkam, war keine gültige HTTP-Antwort, die Cloudflare weitergeben konnte – kein Statuscode, eine leere Antwort, eine zurückgesetzte Verbindung oder etwas, das sich nicht auswerten ließ.
520 ist ein Sammelcode. Cloudflare verwendet spezifischere Codes, wenn es erkennen kann, was schiefgelaufen ist (abgelehnte Verbindung, Timeout, SSL-Fehler). Ein 520 bedeutet also, dass der Origin auf eine Weise geantwortet hat, die Cloudflare nicht einordnen konnte.
Error 520 vs. 521, 522, 523, 524, 525 und 526
Die 52x-Codes von Cloudflare beschreiben alle ein Problem zwischen Cloudflare und dem Origin. Die Nummer verrät dir, wo du suchen musst:
| Code | Text auf der Seite | Was passiert ist |
|---|---|---|
| 520 | Web server is returning an unknown error | Leere, unbekannte oder unerwartete Antwort vom Origin |
| 521 | Web server is down | Der Origin hat die Verbindung abgelehnt |
| 522 | Connection timed out | Cloudflare konnte keine Verbindung zum Origin herstellen |
| 523 | Origin is unreachable | Keine Route zum Origin (prüfe die Origin-IP im DNS) |
| 524 | A timeout occurred | Verbunden, aber der Origin hat nicht rechtzeitig geantwortet |
| 525 | SSL handshake failed | Der HTTPS-Handshake mit dem Origin ist gescheitert |
| 526 | Invalid SSL certificate | Das Zertifikat des Origins ist für den Modus Full (strict) nicht gültig |
Zeigt die Seite stattdessen einen schlichten 502 oder 504, lies 502 Bad Gateway und 504 Gateway Timeout. Bei 521 und 522 prüfst du mit dem Port-Checker von außen, ob Port 443 oder 80 des Origins Verbindungen annimmt. Bei 525 und 526 zeigt der SSL-Checker das Origin-Zertifikat, und ERR_SSL_VERSION_OR_CIPHER_MISMATCH behandelt Probleme mit TLS-Version und Verschlüsselungsverfahren.
Advertisement
Was verursacht einen 520-Fehler?
Cloudflare nennt in seiner Dokumentation zur Fehlerbehebung diese Ursachen:
Der Origin-Server stürzt ab oder ist falsch konfiguriert, zum Beispiel ein PHP- oder Node-Prozess, der mitten in einer Anfrage beendet wird.
Eine Firewall oder ein Sicherheits-Plugin blockiert Cloudflares IPs auf dem Origin, sodass Verbindungen gekappt statt beantwortet werden.
Antwort-Header überschreiten 128 KB, oft wegen zu vieler oder zu großer Cookies.
Leere oder fehlerhafte Antworten ohne HTTP-Statuscode oder Body.
Fehlende Antwort-Header oder ein Origin, der keine ordentlichen HTTP-Fehlerantworten zurückgibt.
Eine falsche HTTP/2-Konfiguration auf dem Origin, wenn HTTP/2 to Origin aktiviert ist.
Authenticated Origin Pulls ist in Cloudflare aktiviert, der Origin aber nicht dafür eingerichtet.
Wenn du Besucher bist
Den Server der Website kannst du nicht reparieren, aber zwei Dinge lohnen sich. Lade nach einer Minute neu, denn ein 520 durch einen Absturz oder Neustart kann sich von selbst erledigen. Und lösche die Cookies der Seite: Liegt es an übergroßen Headern aus Cookies, kann das Löschen der Cookies dieser Seite (Symbol links in der Adressleiste → Cookies und Websitedaten) das Problem für dich beheben.
Scheitert es weiterhin, gib dem Betreiber der Website Bescheid und nenne die Ray ID vom unteren Rand der Fehlerseite. Damit findet er deine genaue Anfrage in Cloudflare.
Advertisement
Lösung 1: Die Fehlerlogs des Origin-Servers lesen
Cloudflares erste Empfehlung lautet, die Logs des Origins zum Zeitpunkt des Fehlers anzusehen. Abstürze, Out-of-Memory-Kills und zurückgesetzte Verbindungen tauchen dort auf:
sudo tail -n 50 /var/log/nginx/error.log # oder /var/log/apache2/error.log
journalctl -u your-app --since "15 min ago" # Logs des App-Dienstes
pm2 logs --lines 50 # Node-Apps unter PM2
dmesg -T | grep -i "killed process" # Out-of-Memory-KillsLösung 2: Den Origin ohne Cloudflare testen
Ruf die Seite direkt vom Origin ab, an Cloudflare vorbei, und sieh dir die rohe Antwort an. Mit curl kannst du den Hostnamen für eine einzelne Anfrage auf die Origin-IP zeigen lassen:
# 203.0.113.10 durch die IP deines Origin-Servers ersetzen
curl -sv --resolve example.com:443:203.0.113.10 https://example.com/broken-page -o /dev/null
# Achte auf: eine normale Statuszeile "HTTP/1.1 200" (oder HTTP/2 200) und Header.
# "Empty reply from server" oder "Connection reset by peer" an dieser Stelle reproduziert den 520.Cloudflare schlägt außerdem einen vorübergehenden Workaround vor: Stelle den DNS-Eintrag auf Nur DNS (DNS only, graue Wolke) oder pausiere Cloudflare, damit Besucher den Origin direkt erreichen, während du der Sache nachgehst. Bedenke, dass dadurch deine Origin-IP sichtbar wird. Die DNS-Abfrage von DNS Robot zeigt, welche IPs die Welt aktuell für deine Domain sieht, und das Tool HTTP-Headers zeigt die Header server: cloudflare und cf-ray, wenn der Traffic über Cloudflare läuft.
Advertisement
Lösung 3: Cloudflares IP-Bereiche auf dem Origin erlauben
Der gesamte Besucher-Traffic erreicht deinen Origin aus Cloudflares IP-Bereichen. Eine Firewall, ein fail2ban-Jail oder ein Sicherheits-Plugin, das „verdächtige“ IPs drosselt oder sperrt, kann deshalb am Ende Cloudflare selbst blockieren. Erlaube die unter https://www.cloudflare.com/ips/ veröffentlichten Bereiche in deiner Firewall und deinen Sicherheits-Plugins, und sorge dafür, dass dein Webserver die echte Besucher-IP aus dem Header CF-Connecting-IP liest, damit Rate-Limits für Besucher gelten und nicht für Cloudflare.
Lösung 4: Antwort-Header unter 128 KB halten
Cloudflare lehnt Antworten des Origins ab, deren Header 128 KB überschreiten, und meist sind Cookies der Grund. Prüfe, wie viele Set-Cookie-Header eine Seite sendet und wie groß sie sind. Entferne Cookies, die du nicht mehr brauchst, halte Session-Cookies klein und meide Apps oder Plugins, die große Datenmengen in Cookies schreiben.
Advertisement
Lösung 5: HTTP/2 to Origin und Authenticated Origin Pulls prüfen
HTTP/2 to Origin: Ist die Funktion in Cloudflare aktiviert (in den Speed-Einstellungen), die HTTP/2-Einrichtung des Origins aber fehlerhaft, können Antworten mit einem 520 scheitern. Cloudflare empfiehlt, die HTTP/2-Konfiguration des Origins zu prüfen oder HTTP/2 to Origin zur Bestätigung auszuschalten.
Authenticated Origin Pulls: Ist diese Funktion in Cloudflare aktiv, muss der Origin so konfiguriert sein, dass er Cloudflares Client-Zertifikat akzeptiert. Ist er das nicht, schalte die Funktion aus oder schließe die Einrichtung auf dem Origin ab.
Lösung 6: Was du an den Cloudflare-Support schicken solltest
Wirkt der Origin gesund und der 520 bleibt, bittet Cloudflare um Folgendes:
Die vollständigen URLs, unter denen der Fehler auftritt.
Die cf-ray-ID von der Fehlerseite.
Die Ausgabe von
http://yourdomain.com/cdn-cgi/trace.Zwei HAR-Dateien (DevTools → Netzwerk → exportieren), eine mit aktiviertem und eine mit deaktiviertem Cloudflare.
Prüfe, ob eine Website hinter Cloudflare liegt
Der HTTP-Headers-Checker von DNS Robot zeigt Statuscode, Server-Header und cf-ray-ID jeder URL. So bestätigst du einen 520 und siehst, ob Cloudflare vor der Website sitzt.
Testen HTTP-Headers-CheckerAdvertisement
Häufig gestellte Fragen
Es ist ein Cloudflare-Fehler und bedeutet, dass der Origin-Server der Website Cloudflare eine leere, unbekannte oder unerwartete Antwort geschickt hat. Dein Browser und Cloudflare funktionieren; der Origin-Server antwortet nicht richtig.