Fehler 520: Web-Server ist ein unbekannter Fehler zurückgegeben

error520.png

Überblick

Der Fehler 520 ist im Wesentlichen eine „catch-all“ Antwort für, wenn der Ursprungsserver liefert etwas unerwartete oder etwas, das nicht toleriert / interpretiert (Protokollverletzung oder leer Antwort).

Während die 520 Fehler können durch eine sehr einzigartige und seltsame Rand Case-Szenarien ausgelöst werden, werden sie in der Regel verursacht durch:

  • Verbindung setzt (nach einem erfolgreichen TCP-Handshake)
  • Headers überschreiten Cloudflare Header Größenbegrenzung (über 8 kb)
  • Leere Antwort vom Ursprung
  • Ungültige HTTP-Antwort
  • HTTP-Antwort fehlt Antwort-Header

 Wenn eine dieser Bedingungen können vom Webserver bestätigt wird Hosting der Website, dann ist es empfehlenswert, mit den Host-Provider für die Unterstützung bei der Konfiguration des Webservers zu vermeiden, weitere Unterbrechung und Fehler zu konsultieren.  

Häufige Ursachen

520 Fehler werden auf Schicht 7, in der Regel verursacht, die die Anwendungsschicht ist. Dies bedeutet, dass ein 520-Fehler das Ergebnis einer schlechten Antwort ist von der Anwendung kommen zurück. Rate Limiting, oder Filteranforderungen (zB durch IP-Anschluss oder Volumen / Frequenz) kann manchmal Probleme verursachen mit Ihrer Anwendung.  

Fehlerbehebung

Aufgrund der Beschaffenheit der 520-Antwort, ist es am besten gegen den Ursprungsserver Reaktion zu testen, einen cURL-Befehl, um zu bestätigen, ob alle Bedingungen die Fehler auszulösen erfüllt wurden. Dies gilt insbesondere, um zu bestimmen, ob der Ursprungsserver wird eine leere Antwort, ungültige HTTP-Antwort, oder extrem große Antwort-Header zurück.

Hier ist ein Beispiel-Befehl verwendet, um die   zu zwingenGastgeber HTTP Header, während die Anforderung an den Quell-IP sendet, wo die Domäne (in diesem Beispiel sind wir eine Anfrage für eine Login-Seite zu senden) gehostet wird:

curl -vso / dev / null --user-agent "Mozilla 5.0" -h "Host: example.com" http://123.123.123.321/login

Hier ist ein Beispiel für die Ausgabe, wo die Ursprung Antwort ist eine leere Antwort, die normalerweise einen 520 Fehler auslösen würde, wenn die Anforderung von Cloudflare proxied wurde:

* Hostname wurde nicht in DNS-Cache gefunden
*    Trying 123.123.123.321 ...
* Verbunden mit 123.123.123.321 (123.123.123.321) Port 80 (# 0)
> GET / login HTTP / 1.1
> User-Agent: Mozilla 5.0
> Accept: * / *
> Host: example.com
>
* Leere Antwort vom Server
* Anschluss # 0 Gastgeber 123.123.123.321 intakt gelassen

Ein guter Kopf könnte wie folgt aussehen:

* Hostname wurde nicht in DNS-Cache gefunden
*    Trying 123.123.123.321 ...
* Verbunden mit 123.123.123.321 (123.123.123.321) Port 80 (# 0)
> GET / login HTTP / 1.1
> User-Agent: Mozilla 5.0
> Accept: * / *
> Host: example.com
>
<HTTP / 1.1 200 OK
<Content-Type: text / html
<Datum: Tag, DD, Monat Jahr Stunde: Minute: Sekunde Zeitzone
{[14240 bytes data]
* Anschluss # 0 Gastgeber 123.123.123.321 intakt gelassen

Da Rate auch Begrenzung kann dieses Problem verursachen, werden Sie unsere IPs auf die weiße Liste setzen. Eine Liste von Cloudflare IP-Bereiche können   findenHier.

Eine weitere effektive Fehlerbehebung Schritt wäre eine   zu erhaltenHAR  (HTTP Archive File) für einen Antrag auf dem Ursprung direkt und durch Cloudflare von einem betroffenen Benutzer. HAR-Dateien bieten eine nützliche Informationsquelle, die Response-Header von Ursprung zu vergleichen, und während CF Proxying die Anfrage (nützlich, um zu bestätigen, ob Header-Antwort zu groß ist).  

Wenn ein Support-Ticket einreichen, geben Sie bitte:

  • Schritte, um den Fehler zu reproduzieren
  • HAR-Dateien
  • rayIDs von Fehlern gesehen
Still not finding what you need?

The Cloudflare team is here to help. 95% of questions can be answered using the search tool, but if you can’t find what you need, submit a support request.

Powered by Zendesk