DNS RobotDNS Propagation Checker
StartDNSWHOISIPSSL
DNS RobotDNS Propagation Checker

DNS-Propagation-Checker der nächsten Generation

DatenschutzrichtlinieNutzungsbedingungenÜber unsBlogKontakt

DNS-Tools

DNS-AbfrageDNS-GeschwindigkeitstestDomain zu IPNS-AbfrageMX-AbfrageAlle anzeigen

E-Mail-Tools

SPF-Eintrag-CheckerDMARC-CheckerDKIM-CheckerSMTP-Test-ToolE-Mail-Header-AnalyseAlle anzeigen

Website-Tools

WHOIS-AbfrageHosting-CheckerDomain-VerfügbarkeitSubdomain-FinderCMS-ErkennungAlle anzeigen

Netzwerk-Tools

Ping-ToolTraceroutePort-CheckerHTTP-Header-CheckSSL-Zertifikat-CheckAlle anzeigen

IP-Tools

IP-AbfrageMeine IP-AdresseIP-Blacklist-CheckIP zu HostnameASN-AbfrageAlle anzeigen

Hilfs-Tools

QR-Code-ScannerQR-Code-GeneratorUPI QR Code GeneratorWiFi QR Code GeneratorMorsecode-ÜbersetzerAlle anzeigen
© 2026 DNS Robot. Entwickelt von: ❤ Shaik Brothers
Alle Systeme betriebsbereit
Made with
Startseite/Blog/400 Bad Request: Bedeutung und so behebst du den Fehler

400 Bad Request: Bedeutung und so behebst du den Fehler

Shaik Vahid30. Sept. 20269 Min. Lesezeit
nginx-Seite „400 Bad Request: Request Header Or Cookie Too Large“ mit den Lösungen in der richtigen Reihenfolge
nginx-Seite „400 Bad Request: Request Header Or Cookie Too Large“ mit den Lösungen in der richtigen Reihenfolge

Kernaussage

Ein 400 Bad Request bedeutet: Der Server hat deine Anfrage erhalten, verweigert aber die Verarbeitung, weil etwas daran fehlerhaft aussah – eine kaputte URL, zu große oder beschädigte Cookies bzw. Header oder ungültige Daten an eine API. Als Besucher prüfst du die URL auf überflüssige Zeichen und löschst dann die Cookies und den Cache dieser einen Website. Das behebt die meisten Fälle. Als Website-Betreiber liest du Fehlerseite und Logs: „Request Header Or Cookie Too Large“ heißt, du solltest Cookies verkleinern oder die Header-Limits anheben, und „plain HTTP request was sent to HTTPS port“ heißt, ein Proxy spricht HTTP mit einem TLS-Port.

Advertisement

Was ist der Fehler 400 Bad Request?

400 Bad Request ist ein HTTP-Statuscode und bedeutet, dass der Server deine Anfrage erhalten hat, sie aber nicht verarbeitet, weil mit der Anfrage selbst etwas nicht stimmt. Der HTTP-Standard (RFC 9110, Abschnitt 15.5.1) definiert ihn so: Der Server kann oder will eine Anfrage nicht verarbeiten, „weil etwas als Fehler des Clients wahrgenommen wird“, etwa fehlerhafte Syntax, ungültiges Message-Framing oder irreführendes Request-Routing.

Anders als ein 500er-Fehler, der heißt, dass der Server kaputt ist, zeigt ein 400 auf die Anfrage: die URL, die Header, die Cookies oder die Daten, die dein Browser oder deine App gesendet hat. Für alle anderen funktioniert die Website meist ganz normal.

Für Besucher ist das eine gute Nachricht, denn die Lösung liegt meist auf deiner Seite und dauert eine Minute: Hinter den meisten 400-Fehlern stecken ein vertippter Link oder ein beschädigtes Cookie.

Hinweis

Ein 400-Fehler betrifft die Anfrage, nicht die Zugriffsrechte. Hat der Server dich verstanden, lässt dich aber nicht rein, bekommst du 401 Unauthorized oder 403 Forbidden. Schickst du zu viele Anfragen, bekommst du 429 Too Many Requests.

So sieht ein 400-Fehler aus

Die Meldung hängt von der Serversoftware ab, und der Zusatztext ist oft der beste Hinweis auf die Ursache:

ServerWas auf der Seite stehtÜbliche Ursache
nginx400 Bad Request: Request Header Or Cookie Too LargeCookies oder Header über dem Limit von nginx
nginx400 Bad Request: The plain HTTP request was sent to HTTPS portHTTP an einen Port gesendet, der HTTPS erwartet
ApacheBad Request: Your browser sent a request that this server could not understand.Fehlerhafte Anfrage oder ein zu großes Header-Feld
IIS (HTTP.sys)Bad Request - Invalid URL. HTTP Error 400. The request URL is invalid.Unzulässige oder falsch codierte Zeichen in der URL
IIS (HTTP.sys)Bad Request - Request Too Long. The size of the request headers is too long.Zu viele oder zu große Cookies
Google400. That's an error. Your client has issued a malformed or illegal request.Kaputte URL oder beschädigte Cookies

Advertisement

Was verursacht einen 400 Bad Request?

  • Eine fehlerhafte URL. Ein verirrtes %-Zeichen, ein Leerzeichen, ein Zeichen, das hätte codiert werden müssen, oder ein Link, der abgeschnitten oder doppelt eingefügt wurde.

  • Beschädigte oder zu große Cookies. Websites, die viele Cookies setzen (Logins, A/B-Tests, Analytics), können den Cookie-Header über das Limit des Servers treiben. Auch ein Cookie, das bei einem Update beschädigt wurde, kann abgelehnt werden.

  • Zu große Request-Header. Neben Cookies summieren sich lange Authentifizierungs-Tokens oder Header, die Erweiterungen und Proxys hinzufügen.

  • Ungültige Daten an eine API. Fehlende Pflichtfelder, fehlerhaftes JSON oder der falsche Content-Type-Header.

  • HTTP an einen HTTPS-Port gesendet. Häufig hinter Load Balancern und Reverse Proxys.

  • Eine zu große Datei. Viele Server antworten mit 413 Content Too Large, manche Apps und Frameworks liefern stattdessen aber 400.

Lösung 1: Prüfe die URL

Sieh dir die Adressleiste genau an. Darauf solltest du achten:

  • Ein %, auf das keine zwei Hexadezimalzeichen folgen (%20 ist in Ordnung, %2 oder %zz nicht).

  • Leerzeichen, { }, |, \ oder andere ungewöhnliche Zeichen, vor allem in Links, die aus E-Mails, PDFs oder Chat-Apps kopiert wurden.

  • Ein Link, der doppelt eingefügt (https://example.com/https://example.com/...) oder mittendrin abgeschnitten wurde.

  • Eine sehr lange URL mit Tracking-Parametern. Lösche alles ab dem ? und versuche es erneut.

Tipp

E-Mail- und Chat-Apps verpacken Links oft in Tracking-Weiterleitungen, die lange URLs beschädigen können. Liefert ein Link aus einer E-Mail einen 400-Fehler, kopiere die ursprüngliche Adresse (oder tippe die Adresse der Website selbst ein), statt durchzuklicken.

Bist du über einen Link von einer anderen Website gekommen, geh stattdessen auf die Startseite der Website und navigiere von dort zur gewünschten Seite.

Advertisement

Lösung 2: Lösche die Cookies dieser einen Website

Das behebt die meisten 400-Fehler auf Websites, die du schon einmal genutzt hast, vor allem Meldungen, in denen Cookies oder Header „too large“ oder „too long“ sind. Du musst nicht die Cookies aller Websites löschen, nur die dieser einen:

  • Chrome / Edge: Klicke auf das Symbol links in der Adressleiste → Cookies und Websitedaten (oder Website-Einstellungen) → lösche die Daten der Website und lade neu.

  • Firefox: Klicke auf das Schloss-Symbol → Cookies und Website-Daten löschen …

  • Safari (Mac): Safari → Einstellungen → Datenschutz → Websitedaten verwalten … → nach der Website suchen → Entfernen.

  • iPhone: Einstellungen → Apps → Safari → Erweitert → Websitedaten → auf der Website nach links wischen, um sie zu löschen.

Tipp

Wenn du die Cookies einer Website löschst, wirst du dort abgemeldet. Stell sicher, dass du dein Passwort kennst oder deinen Passwortmanager griffbereit hast, bevor du sie löschst.

Lösung 3: Inkognito testen, dann den Cache leeren

Öffne die Seite in einem Inkognito- bzw. privaten Fenster (Strg + Umschalt + N in Chrome und Edge, Strg + Umschalt + P in Firefox, Cmd + Umschalt + N in Safari). Private Fenster starten ohne Cookies und ohne Erweiterungen. Funktioniert die Seite dort, lösen Lösung 2 oder Lösung 4 das Problem dauerhaft.

Scheitert auch Inkognito, leere den Browser-Cache (Strg + Umschalt + Entf → Bilder und Dateien im Cache) und leere als letzten Schritt deinen DNS-Cache. DNS ist selten die Ursache eines 400-Fehlers, aber nach einem Serverumzug der Website kann dich eine veraltete Adresse auf einen Server führen, der deine Anfrage ablehnt.

Advertisement

Lösung 4: Erweiterungen deaktivieren und Dateigrößen prüfen

Erweiterungen, die Anfragen verändern, etwa Datenschutz-Tools, Header-Editoren, Gutschein-Finder und manche Werbeblocker, können Header so hinzufügen oder ändern, dass ein Server sie ablehnt. Deaktiviere alle, lade neu und schalte sie dann nacheinander wieder ein, um den Schuldigen zu finden.

Tritt der Fehler beim Hochladen auf, probiere eine kleinere Datei. Komprimiere Bilder oder teile große Dateien auf. So erfährst du, ob der Server die Größe ablehnt, auch wenn er das als 400 statt als 413 meldet.

Für Website-Betreiber: Die Ursache von 400-Fehlern finden

Melden Nutzer 400-Fehler auf deiner Website, fang mit der genauen Meldung an, die sie sehen, und mit deinen Server-Logs. nginx und Apache protokollieren den Grund auf dem Level info. Siehst du ihn nicht, setz das Log-Level des Error-Logs vorübergehend herauf. Das Access-Log zeigt, welche URLs 400 liefern. Das Tool HTTP-Headers von DNS Robot zeigt den Statuscode, die Serversoftware und jeden Set-Cookie-Header, den eine Seite sendet. So erkennst du Cookies, die immer weiter wachsen.

bash
# Welche Anfragen bekommen 400? (nginx-Logformat "combined")
sudo awk '$9 == 400 {print $7}' /var/log/nginx/access.log | sort | uniq -c | sort -rn | head

# Die Gründe, die nginx protokolliert hat (braucht error_log ... info;)
sudo grep -i "client sent\|too large\|bad request" /var/log/nginx/error.log | tail -20

Advertisement

„Request Header Or Cookie Too Large“

nginx liest Request-Header in Puffer ein, die large_client_header_buffers festlegt, standardmäßig 4 Puffer zu je 8 KB. Eine einzelne Header-Zeile, meist der Cookie-Header, die nicht in einen Puffer passt, löst diesen 400-Fehler aus. Das Gegenstück bei Apache ist LimitRequestFieldSize, standardmäßig 8.190 Byte.

Die saubere Lösung ist, weniger zu senden: Entferne Cookies, die du nicht mehr brauchst, halte Session-Cookies klein und beschränke Cookies auf die Pfade und Subdomains, die sie nutzen. Brauchst du wirklich größere Header, etwa für große Single-Sign-on-Tokens, hebe das Limit an:

nginx
# nginx (http- oder server-Block)
large_client_header_buffers 4 16k;

# Entsprechung bei Apache (httpd.conf / vhost)
# LimitRequestFieldSize 16380

Warnung

Sitzt du hinter einem CDN oder Load Balancer, hat jede Schicht ihr eigenes Header-Limit. Das Limit von nginx anzuheben hilft nicht, wenn das CDN die Anfrage schon vorher ablehnt, also prüfe jede Schicht. Node.js zum Beispiel lehnt Header über 16 KB mit 431 Request Header Fields Too Large ab.

„The plain HTTP request was sent to HTTPS port“

nginx liefert diesen 400-Fehler, wenn etwas unverschlüsseltes HTTP an einen Port schickt, an dem nginx TLS erwartet, meist 443. Typische Ursachen sind ein Load Balancer oder Proxy, der http://-Traffic an Port 443 weiterleitet, ein Link wie http://example.com:443 oder eine alte ssl on;-Einstellung, durch die ein Port TLS erwartet, obwohl er das nicht sollte.

Sorge dafür, dass jede listen-Zeile zu dem passt, was dort ankommt: listen 443 ssl; für HTTPS und listen 80; für unverschlüsseltes HTTP, mit einer Weiterleitung von 80 auf 443. Stell außerdem sicher, dass der vorgeschaltete Proxy HTTPS mit Port 443 spricht (bzw. HTTP mit Port 80).

400-Fehler von APIs

APIs nutzen 400 für Anfragen, die die Validierung nicht bestehen. Rufst du eine API auf, lies den Response-Body, denn die meisten APIs erklären, welches Feld falsch ist. Prüfe dann, ob du gültiges JSON, den richtigen Header Content-Type: application/json und alle Pflichtparameter sendest.

Baust du selbst eine API, gib einen Body zurück, der das Problem benennt (zum Beispiel {"error": "email is required"}), und erwäge 422 Unprocessable Content für Anfragen, die formal korrekt, aber inhaltlich ungültig sind. 400 bleibt dann für Anfragen, die sich gar nicht erst parsen lassen.

Hinweis

Um genau zu sehen, was gesendet wurde, öffne die DevTools (F12) → Netzwerk, klicke auf die fehlgeschlagene Anfrage und vergleiche ihre Header und die Nutzlast (Payload) mit dem, was die API erwartet, oder reproduziere sie mit curl -v. Der Response-Body nennt meist das ungültige Feld.

400 vs. 401, 403, 404, 413, 429 und 431

CodeNameBedeutung
400Bad RequestDie Anfrage ist fehlerhaft oder ungültig
401UnauthorizedDu musst dich anmelden oder gültige Zugangsdaten senden
403ForbiddenDer Server hat dich verstanden, verweigert aber den Zugriff
404Not FoundUnter dieser URL existiert nichts
413Content Too LargeDer Upload oder der Request-Body ist zu groß
429Too Many RequestsDu hast ein Rate-Limit erreicht
431Request Header Fields Too LargeHeader, meist Cookies, sind zu groß (ein spezifischerer 400)

Unsere Anleitungen zu den Nachbarn: 403 Forbidden, 401 Unauthorized und 429 Too Many Requests. Bei Weiterleitungen, die sich im Kreis drehen statt zu scheitern, lies ERR_TOO_MANY_REDIRECTS, und der Weiterleitungs-Checker zeigt jeden einzelnen Hop.

Sieh genau, was eine Seite zurückgibt

Der HTTP-Headers-Checker von DNS Robot zeigt für jede URL den Statuscode, die Serversoftware und jeden Set-Cookie-Header. So bestätigst du einen 400-Fehler und erkennst Cookies, die zu groß werden.

Testen HTTP-Headers-Checker

Advertisement

Häufig gestellte Fragen

Es bedeutet, dass der Server deine Anfrage erhalten, aber die Verarbeitung verweigert hat, weil etwas daran fehlerhaft oder ungültig aussah, etwa eine kaputte URL, zu große oder beschädigte Cookies, zu große Header oder ungültige Daten an eine API.

Verwandte Tools

HTTP Headers CheckRedirect CheckerSSL Certificate Check

Verwandte Artikel

403 Forbidden Fehler: Bedeutung und LoesungHTTP 401 Unauthorized Fehler: Bedeutung und LoesungHTTP Error 429 Too Many Requests: Ursachen & Lösungen

Inhaltsverzeichnis

  • Was ist der Fehler 400 Bad Request?
  • So sieht ein 400-Fehler aus
  • Was verursacht einen 400 Bad Request?
  • Lösung 1: Prüfe die URL
  • Lösung 2: Lösche die Cookies dieser einen Website
  • Lösung 3: Inkognito testen, dann den Cache leeren
  • Lösung 4: Erweiterungen deaktivieren und Dateigrößen prüfen
  • Für Website-Betreiber: Die Ursache von 400-Fehlern finden
  • „Request Header Or Cookie Too Large“
  • „The plain HTTP request was sent to HTTPS port“
  • 400-Fehler von APIs
  • 400 vs. 401, 403, 404, 413, 429 und 431
  • Häufig gestellte Fragen