Kort svar: 400 Bad Request betyder, at serveren ikke kunne forstå den forespørgsel, din browser sendte – så den afviste den uden at kigge på selve siden. I praksis skyldes det næsten altid en af tre ting: cookies, der er vokset sig for store, en adresse med ugyldige tegn, eller en forespørgsel fra et plugin eller en app, der er sat forkert sammen. Som besøgende fjerner du fejlen oftest ved at slette cookies for det ene domæne. Som ejer af en WordPress-side finder du årsagen i browserens netværksfane og webserverens log.
Kontrolgrundlag: Statuskoder og headergrænser kontrolleret mod HTTP-standarden og webservernes egen dokumentation 19. oktober 2026; priser og egenskaber aflæst på Hostious’ egne sider samme dag.
En 400 Bad Request er en af de fejl, der føles mest tilfældig: siden virkede i går, din kollega kan åbne den, og alligevel får du en nøgen hvid side med én linje tekst. Forklaringen er, at fejlen handler om det, din browser sender med – ikke om det, der ligger på serveren. Derfor rammer den tit kun én person, én browser eller ét login.
Her får du først betydningen og de forskellige varianter af teksten, så en diagnose på to minutter for dig, der bare vil ind på siden – og til sidst en gennemgang for dig, der ejer en WordPress-side og vil finde og fjerne årsagen, så dine besøgende ikke møder den.
Hvad betyder 400 Bad Request?
HTTP-statuskoder i 400-serien betyder, at serveren mener, at fejlen ligger hos den, der spørger. 400 er den mest generelle af dem: “jeg kan ikke læse det, du sendte”. Serveren når ikke frem til WordPress, PHP eller databasen – forespørgslen bliver afvist i webserveren eller i et lag foran den, fx et CDN.
| Kode | Hvad serveren siger | Typisk årsag |
|---|---|---|
| 400 Bad Request | Forespørgslen er ugyldig | For store cookies eller headers, ugyldig adresse, forkert sammensat forespørgsel |
| 401 Unauthorized | Du skal logge ind først | Adgangskodebeskyttet område, API uden nøgle |
| 403 Forbidden | Jeg forstår dig, men du må ikke | Firewall, filrettigheder, blokeret IP |
| 404 Not Found | Adressen findes ikke | Slettet side, forkert link |
| 413 Content Too Large | Det, du sender, fylder for meget | Upload over serverens grænse |
| 414 URI Too Long | Selve adressen er for lang | Formular sendt som GET med alt for mange felter |
| 500 Internal Server Error | Noget gik galt hos mig | PHP-fejl, plugin eller tema |
Forskellen på 400 og 413 er værd at kende: 413 handler om indholdet i forespørgslen (typisk en fil, du uploader), mens 400 oftest handler om hovedet – adressen, cookies og de øvrige headers, der sendes før indholdet. Får du fejlen, når du uploader en stor fil, så læs guiden til 413 request entity too large i stedet.
Sådan ser fejlen ud – og hvad teksten afslører
Teksten på fejlsiden er dit første spor. Webservere og browsere formulerer sig forskelligt, og hver formulering peger på sin årsag.
| Det står på skærmen | Hvem skriver det | Det betyder |
|---|---|---|
| 400 Bad Request – Request Header Or Cookie Too Large | nginx | Cookies eller andre headers overstiger serverens grænse (ofte 8 KB) |
| Bad Request – Your browser sent a request that this server could not understand. Size of a request header field exceeds server limit | Apache | Samme problem: én header, typisk Cookie, er for stor |
| 400 Bad Request – The plain HTTP request was sent to HTTPS port | nginx | Noget kalder https-porten uden kryptering – ofte et plugin eller et webhook med forkert adresse |
| HTTP ERROR 400 / This page isn’t working | Chrome og Edge | Browserens egen side, når serveren svarer 400 uden en fejlside |
| Bad Request – Invalid URL | proxy eller CDN | Adressen indeholder tegn eller en opbygning, laget ikke accepterer |
| {“code”:”rest_invalid_param”, …} | WordPress REST API | En app eller et plugin sendte et felt, API’et ikke kan bruge |
Står der noget om header eller cookie, kan du springe direkte til afsnittet om cookies længere nede. Står der plain HTTP request, er det ikke besøgende, men en forkert adresse i en integration, der skal rettes.
Er du besøgende? Diagnosen på to minutter
De fleste 400-fejl forsvinder uden hjælp fra sidens ejer. Tag trinnene i rækkefølge, og stop, når siden virker.

- Tjek adressen. Har du kopieret et link fra en mail eller et dokument, kan der være kommet et mellemrum, et linjeskift eller et anførselstegn med. Skriv domænet ind i hånden, og klik dig frem til siden derfra.
- Slet cookies for netop det domæne. I Chrome: klik på ikonet til venstre for adressen → Cookies og webstedsdata → Administrer → Slet. Det logger dig ud af den ene side, men rører ikke dine andre logins. Genindlæs siden bagefter.
- Prøv et privat vindue. Virker siden dér, er problemet cookies eller en udvidelse i din normale browserprofil. Virker den ikke, ligger fejlen sandsynligvis på serversiden.
- Prøv en anden enhed eller et andet netværk. Virker siden på mobilen over 4G, men ikke på arbejdscomputeren, er det en proxy, et VPN eller en sikkerhedsløsning på netværket, der ændrer forespørgslen.
- Kontakt ejeren. Fejler siden alle steder og i alle browsere, kan kun ejeren gøre noget. Send gerne den præcise tekst fra fejlsiden og tidspunktet.
Hjælper det at rydde hele browserens cache? Sjældent – cache er gemte sider og filer, ikke det, browseren sender med. Fremgangsmåden står alligevel i guiden ryd cache, hvis du vil udelukke det.
Ejer du siden? De fem årsager på en WordPress-side
Når besøgende melder om 400, er det sjældent WordPress selv, der svarer. Fejlen opstår i webserveren (nginx, Apache eller LiteSpeed), i et CDN foran den – eller i en forespørgsel, som et plugin selv sætter forkert sammen.
| Årsag | Hvor den sidder | Sådan genkender du den |
|---|---|---|
| Cookies vokser ud over headergrænsen | Webserver eller CDN | Rammer loggede brugere og kunder med fyldt kurv; forsvinder, når de sletter cookies |
| Ugyldige tegn i adressen | Webserver eller CDN | Kun bestemte links fejler – typisk fra nyhedsbreve, PDF’er eller gamle sider |
| Forkert protokol eller port i en integration | Webserver | Fejlen står i loggen med “plain HTTP request”, og en betaling, et webhook eller en synkronisering fejler |
| Forkert sammensat API-kald | WordPress REST API | Svaret er JSON med rest_invalid_param eller rest_missing_callback_param |
| Proxy eller sikkerhedslag omskriver forespørgslen | Foran serveren | Kun besøgende på bestemte netværk eller med bestemte udvidelser rammes |
Den første årsag står for langt de fleste sager på WordPress-sider, så den får sit eget afsnit. Men begynd altid med at bekræfte, hvem der svarer – ellers retter du det forkerte lag.
Find den, der svarer 400
Åbn udviklerværktøjerne i browseren (F12), vælg fanen Netværk, sæt flueben ved “Preserve log”, og genindlæs siden. Klik på den røde linje med status 400, og kig på tre ting:
- Svar-headeren
server.nginx,ApacheellerLiteSpeedbetyder, at webserveren afviste.cloudflareeller et andet CDN-navn betyder, at forespørgslen aldrig nåede din server. - Forespørgslens headers. Find linjen
Cookie, og se, hvor lang den er. Fylder den mere end nogle få kilobyte, har du fundet årsagen. - Selve adressen. Se efter
%0A,%22, dobbelte skråstreger eller tegn uden for det almindelige alfabet, som ikke er kodet.
Har du adgang til en terminal, kan du gentage forespørgslen uden browserens cookies. Svarer serveren 200 her, men 400 i browseren, er det næsten sikkert cookies:
curl -s -o /dev/null -w "%{http_code}\n" https://dinside.dk/kurv/
I webserverens access-log står hver 400 med adresse, tidspunkt og IP-adresse. Ser du mange 400’ere fra samme IP mod tilfældige adresser, er det ofte en scanner og ikke et problem for dine besøgende. Ser du dem fra almindelige browsere mod /kurv/, /kasse/ eller /wp-admin/, er det cookies.
Cookies og headers, der er for store – den klassiske 400 i WordPress
Hver gang browseren beder om en side, sender den alle cookies for domænet med. WordPress sætter selv nogle få: login-cookien, testcookien og en indstillingscookie pr. bruger. Men hvert plugin kan lægge sine egne oveni – samtykkebannere, statistik, A/B-test, chat, WooCommerce-sessionen, sikkerhedsplugins og medlemsplugins. Ingen af dem er store, men summen passerer på et tidspunkt webserverens grænse, og så svarer den 400 i stedet for at levere siden.

Grænsen sidder forskellige steder, og det er den laveste, der gælder:
| Lag | Indstilling | Typisk standard |
|---|---|---|
| nginx | large_client_header_buffers | 4 buffere à 8 KB – én header må højst fylde 8 KB |
| Apache | LimitRequestFieldSize | 8.190 byte pr. header |
| LiteSpeed | Max Request Header Size | Sat af udbyderen, normalt højere end nginx og Apache |
| CDN foran serveren | Samlet headergrænse | Typisk 16–32 KB |
| Browseren | Størrelse pr. cookie og antal pr. domæne | Ca. 4 KB pr. cookie og 180 cookies pr. domæne i Chrome |
To veje væk fra fejlen – gør helst begge dele:
- Fjern årsagen. Find de plugins, der sætter cookies, med fanen Application → Cookies i udviklerværktøjerne. Slå dem fra, du ikke bruger, og sæt kortere levetid på dem, du beholder. Et plugin, der sætter en ny cookie ved hvert sidekald uden at fjerne den gamle, er den hyppigste synder.
- Hæv grænsen. Har du egen server, kan du sætte
large_client_header_buffers 4 16k;i nginx ellerLimitRequestFieldSize 16380i Apache. På delt hosting er det udbyderens indstilling – skriv til supporten med tidspunkt og adresse, så de kan se forespørgslen i loggen. Hæv ikke grænsen til det dobbelte “for en sikkerheds skyld”: den beskytter også serveren mod misbrug.
Rammer fejlen kun loginsiden, eller sender den dig i ring mellem login og wp-admin, er det en anden familie af cookieproblemer. Dem gennemgår guiden om login-loop i WordPress.
400 fra REST API, WooCommerce og integrationer
Ikke alle 400-fejl kommer fra besøgende. Når en app, et plugin eller en ekstern tjeneste kalder din side, kan svaret også være 400 – og så er det forespørgslen, der er forkert sat sammen.
- REST API. WordPress svarer 400 med koden
rest_invalid_param, når et felt har forkert type eller værdi, ogrest_missing_callback_param, når et påkrævet felt mangler. Svaret fortæller præcis hvilket felt. Fejler API’et derimod i Webstedets helbred, er det et andet problem – se wordpress rest api fejl, og brug guiden til wordpress rest api, når du selv bygger kaldene. - Webhooks og betalingskvitteringer. Står der “The plain HTTP request was sent to HTTPS port” i loggen, kalder tjenesten
http://ditdomæne.dk:443/…eller en adresse, der er blevet omskrevet forkert. Ret adressen hos afsenderen tilhttps://uden portnummer. - Kassen i WooCommerce. Kunder, der får 400 ved “Afgiv ordre”, har som regel en oppustet session- eller kurvcookie. Rammer det mange kunder samtidig, så følg diagnosen i woocommerce checkout virker ikke, som går hele vejen fra browser til serverlog.
- Formularer. Et felt med et linjeskift i et skjult felt, eller en formular, der sendes som GET med meget indhold, kan give 400 eller 414. Skift formularen til POST, og rens input, før det sendes videre.
Sådan undgår du 400-fejl fremover
En 400 er sjældent en katastrofe, men den rammer typisk de besøgende, du helst vil beholde: dem, der er logget ind, og dem med varer i kurven. Tre vaner holder den væk.
- Hold cookie-budgettet nede. Gennemgå cookies ved hvert nyt plugin, og slet dem fra plugins, du har fjernet. Et samtykkebanner, der selv sætter fem cookies, er et dårligt bytte.
- Overvåg statuskoderne, ikke kun oppetiden. En 400 tæller ikke som nedetid, så en almindelig oppetidsmåler ser den aldrig. Kig i loggen én gang om ugen, eller få hostingen til at gøre det.
- Hold adresserne rene. Brug kun små bogstaver, bindestreger og tal i slugs, og lad WordPress kode specialtegn – skriv dem aldrig direkte ind i links i nyhedsbreve og PDF’er.
Vil du hellere have, at nogen finder årsagen for dig? Med WordPress hosting hos Hostious svarer dansk support døgnet rundt og kan læse webserverloggen på din side med det samme. Fra WP StartUp til 89 kr./md. ekskl. moms er en WordPress serviceaftale med: opdateringer testes på en kopi, sitet scannes dagligt, og driller et plugin efter en opdatering, rydder vi op uden ekstra regning. Ligger siden et andet sted, flytter vi den gratis – se skift hosting.
Vil du sammenligne først, så viser sammenlign webhosting, hvad planerne indeholder.
Læs også
- Hub: WordPress-fejlfinding
- Login-loop og “Cookies are blocked” – kom ind i wp-admin igen
- 413 Request Entity Too Large – sådan uploader du alligevel filen
- 403 Forbidden i WordPress: rettigheder, firewall eller plugin?
- 404 Not Found: hvad fejlen betyder, og sådan retter du den
- 500 Internal Server Error i WordPress – sådan finder du årsagen
- Hvad er cookies? Sådan virker cookies på en hjemmeside
- WordPress hosting hos Hostious – dansk support døgnet rundt, der kan læse loggen for dig
Ofte stillede spørgsmål om 400 Bad Request
Hvad betyder 400 Bad Request på dansk?
Direkte oversat “ugyldig forespørgsel”. Serveren kunne ikke læse det, browseren sendte, og afviste det uden at behandle siden. Fejlen ligger altså i forespørgslen – oftest cookies eller adressen – og ikke i sidens indhold.
Er 400-fejlen min skyld eller hjemmesidens?
Teknisk set siger koden, at forespørgslen var ugyldig, men årsagen kan ligge begge steder. Rammer fejlen kun dig, er det typisk cookies eller en udvidelse i din browser. Rammer den alle, er det serverens grænser eller et plugin på siden.
Hvorfor forsvinder fejlen, når jeg sletter cookies?
Fordi browseren sender alle cookies for domænet med i hver forespørgsel. Bliver de tilsammen større end webserverens grænse for headers, afviser den forespørgslen med 400. Når du sletter dem, starter du forfra med en lille header – indtil de er vokset igen, hvis årsagen ikke er fjernet.
Hvad er forskellen på 400 og 403?
Ved 400 forstår serveren slet ikke forespørgslen. Ved 403 forstår den dig udmærket, men nægter dig adgang – typisk på grund af en firewall-regel, filrettigheder eller en blokeret IP-adresse. De to fejl har derfor helt forskellige løsninger.
Skader 400-fejl min placering i Google?
Enkelte 400-svar betyder ikke noget. Svarer en side 400 til Googles crawler gennem længere tid, ryger den ud af indekset ligesom ved andre fejlkoder. Tjek derfor rapporten Sider i Search Console, hvis fejlen har stået på i dage.
Hvem hjælper med 400-fejl på min WordPress-side?
Din hostingudbyder kan se forespørgslen i webserverloggen og rette grænsen, hvis det er den, der er problemet. Hos Hostious er dansk support med døgnet rundt i alle WordPress-planer fra 39 kr./md. ekskl. moms, og med serviceaftalen fra WP StartUp finder vi også det plugin, der fylder cookies op – som en del af aftalen.
Udgivet 19. oktober 2026Opdateret 19. oktober 2026
