404

Not Found

Officiel Understatuskoder
Webserveren kunne ikke finde den ønskede ressource

Generel forklaring af 404-statuskoden

Med statuskoden 404 Not Found kunne serveren ikke finde en ressource under den angivne URL. Denne meddelelse er den mest velkendte fejlmeddelelse, selv blandt ikke-tekniske brugere, da selv store websteder har stive linkstrukturer, og en 404 Not Found-fejlmeddelelse bliver sendt oftere.

Specifikation af HTTP-statuskode 404

Statuskoden 404 Not Found angiver, at origin-serveren ikke har fundet en aktuel repræsentation for målressourcen eller ikke er villig til at oplyse, om der findes en sådan. En 404 Not Found-statuskode angiver ikke, om den manglende repræsentation er midlertidig eller permanent; 410-statuskoden (Gone) foretrækkes frem for 404 Not Found, hvis origin-serveren ved, formentlig ved hjælp af en eller anden konfigurerbar metode, at tilstanden sandsynligvis vil være permanent. Et 404 Not Found-svar kan som standard anvendes i cache, dvs. medmindre metodefinitionen eller eksplicitte cache-kontroller angiver andet (se afsnit 4.2.2 i [RFC7234]).

Kilde / citat fra: HTTP-statuskoden 404 Not Found er specificeret i afsnit 6.5.4. i RFC7231.

Hvordan får man en 404-statuskode med PHP?

Hvis du vil have HTTP-statuskoden 404 på en webside, kan du bruge PHP-funktionen http_response_code. Syntaksen er som følger: http_response_code(404) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Test 404 HTTP-statuskoden

For at kunne vise HTTP-statuskoden (i dette tilfælde 404 Not Found) og andre oplysninger på klientsiden skal udviklingskonsollen åbnes med F12. Naviger derefter til fanen "Network" (netværk). Nu kan siden åbnes, hjemmesiden (eksempel index.php) skal være synlig i fanen netværk. Denne skal vælges, og derefter skal Herder-sektionen vælges. Brugeren vil derefter se følgende resultat:

Statuskode 404 Not Found
Oversigt
URL: https://http-statuscode.com/errorCodeExample.php?code=404
Status: 404 Not Found
Disse: Network
IP-adresse: XX.XX.XX.XX
Statuskode 404 Not Found

Hvordan løser jeg problemet med 404-statuskoden?

Statuskoden 404 Not Found kan forekomme af forskellige årsager. Nogle er trivielle, andre er mere komplekse. Den mest sandsynlige årsag er, at URL'en er stavet forkert, eller at et link til en intern side er indstillet forkert. En anden mulighed er, at den linkede side blev slettet fra webserveren, og at der ikke blev sat en opfølgende statuskode som 410 (væk).

Men der kan også være et noget mere kompliceret fejlmønster. Hvis man sikrer sig, at hverken URL'en er stavet forkert eller at ressourcen er blevet slettet, kan en redirect fra "htaccess"-filen også være fejlbehæftet. Fejlbehæftede redirects kan ofte opdages med webværktøjer.

Som en sidste sandsynlig mulighed kan man også overveje et cachingproblem. Enten er problemet allerede blevet løst på serversiden, men browserens cache genindlæser ikke siden, men fra den lokale hukommelse, eller også indlæser webserveren heller ikke den aktuelle version. I dette tilfælde skal cachen ryddes både på klientsiden og på serversiden.

Sådan opretter du din egen fejlside for statuskode 404

Det er relativt nemt at oprette din egen 404 Not Found-fejlside med både Apache- og NGINX-webservere.

Apache Webserver

Webserveren "Apache" er en af de mest almindelige webservere på internettet. For at oprette din egen 404 Not Found-fejlside i "Apache" skal du foretage følgende ændring i følgende fil.

File: .htaccess
ErrorDocument 404 /errors/404.html

NGINX Webserver

I lighed med webserveren "Apache" er "NGINX" også meget udbredt på internettet. For at oprette din egen 404 Not Found-fejlside i "NGINX" skal du foretage følgende ændring i følgende fil.

File: sites-enabled/default
error_page 404 /404.html;
location = /404.html {
    root /usr/share/nginx/html;
    internal;
}

Browserkompatibilitet for 404-statuskoden

Chrome Yes
Edge Yes
Firefox Yes
Opera Yes
Safari Yes
Chrome Android Yes
Firefox for Android Yes
Opera Android Yes
Safari on iOS Yes
Internet Yes
WebView Android Yes

Hvilke SEO-effekter har 404-statuskoden?

I en verden af søgemaskineoptimering (SEO) er statuskoden 404 Not Found "Not Found" mere end bare en simpel fejlmeddelelse. Den har reelle og håndgribelige effekter på den måde, søgemaskiner opfatter og evaluerer en hjemmeside på.

Når en bruger eller søgemaskine-crawler forsøger at tilgå en side, der ikke er der, og derfor returnerer en 404 Not Found-fejl, fortolker søgemaskiner dette som en ikke-eksisterende side. En sporadisk 404 Not Found-fejl her og der vil ikke nødvendigvis have en drastisk effekt på placeringen i søgemaskinerne. Men en ophobning af sådanne fejl kan signalere til søgemaskinerne, at hjemmesiden ikke er godt vedligeholdt eller opdateret.

En hyppig forekomst af 404 Not Found-fejl kan opfattes af søgemaskinerne som en indikator for dårlig hjemmesidestruktur eller vedligeholdelse. Dette kan igen have en negativ indvirkning på den tillid, som søgemaskinen har til hjemmesiden. Og i SEO-verdenen er tillid altafgørende. En hjemmeside, som søgemaskinerne har tillid til, har en tendens til at rangere bedre i søgeresultaterne.

Som tidligere nævnt har hver hjemmeside også et crawl-budget. Det henviser til antallet af sider, som en søgemaskinecrawler vil besøge i en given periode. For mange 404 Not Found-fejl kan resultere i, at en betydelig del af dette budget bliver spildt på ikke-eksisterende sider. Det betyder, at nyt eller opdateret indhold kan være længere tid om at blive opdaget og indekseret af søgemaskinerne.

Et andet vigtigt problem er tabet af backlinks på grund af 404 Not Found-fejl. Backlinks er en afgørende rankingfaktor, og hvis en ekstern side linker til en URL, der returnerer en 404 Not Found-fejl, vil linket ikke længere blive betragtet som en positiv rankingfaktor af søgemaskinerne.

Sammenfattende kan 404 Not Found-fejl, selvom de kan virke harmløse på overfladen, have en alvorlig indvirkning på en hjemmesides ranking i søgemaskinerne. Det er derfor i en webmasters bedste interesse at overvåge og rette disse fejl regelmæssigt for at sikre, at hjemmesiden bevarer sin bedst mulige position i søgeresultaterne.

Konstanter i programmeringssprog

HttpStatusCode.NotFound
http.StatusNotFound
response::HTTP_NOT_FOUND
httplib.NOT_FOUND
http.client.NOT_FOUND
http.HTTPStatus.NOT_FOUND
:not_found

Eksempel på "Client request" og "Server response" med HTTP-statuskode 404

Client request:

GET /missingpage.php HTTP/1.1
Host: www.http-statuscode.com

Server response:

HTTP/1.1 404 Not Found
Content-Type: text/html

<html>
<head><title>404 Not Found</title></head>
<body>
<h1>Not Found</h1>
<p>The requested URL /missingpage.php was not found on this server.</p>
</body>
</html>

Understatuskoder til 404-statuskoden

Substatuskoder er rent tekniske og bør aldrig sendes til brugeren. Hvis f.eks. statuskode 404.1 vises, kan det logges, men statuskode 404 sendes til brugeren.:
404.0 Not found
HTTP IIS, Uofficiel
404.1 Site Not Found
HTTP IIS, Uofficiel
404.2 ISAPI or CGI restriction.
HTTP IIS, Uofficiel
404.3 MIME type restriction.
HTTP IIS, Uofficiel
404.4 No handler configured
HTTP IIS, Uofficiel
404.5 Denied by request filtering configuration
HTTP IIS, Uofficiel
404.6 Verb denied
HTTP IIS, Uofficiel
404.7 File extension denied
HTTP IIS, Uofficiel
404.8 Hidden namespace
HTTP IIS, Uofficiel
404.9 Files attribute hidden
HTTP IIS, Uofficiel
404.10 Request header too long
HTTP IIS, Uofficiel
404.11 Request contains double escape sequence
HTTP IIS, Uofficiel
404.12 Request contains high-bit characters
HTTP IIS, Uofficiel
404.13 Content length too large
HTTP IIS, Uofficiel
404.14 Request URL too long
HTTP IIS, Uofficiel
404.15 Query string too long
HTTP IIS, Uofficiel
404.16 DAV request sent to the static file handler
HTTP IIS, Uofficiel
404.17 Dynamic content mapped to the static file handler
HTTP IIS, Uofficiel
404.18 Querystring sequence denied
HTTP IIS, Uofficiel
404.19 Denied by filtering rule
HTP IIS, Uofficiel
404.20 Too Many URL Segments
HTTP IIS, Uofficiel
404.501 Too many requests from the same client IP; Dynamic IP Restriction Concurrent request rate limit reached
HTTP IIS, Uofficiel
404.502 Too many requests from the same client IP; Dynamic IP Restriction Maximum request rate limit reached
HTTP IIS, Uofficiel
404.503 the IP address is included in the Deny list of IP Restriction
HTTP ISS, Uofficiel
404.504 the host name is included in the Deny list of IP Restriction
HTTP IIS, Uofficiel

Blog-artikler

HTTP-statuskoder: En detaljeret analyse af fejlmeddelelserne 404 Not Found og 410 Gone

HTTP-statuskoder er en vigtig del af Hypertext Transfer Protocol (HTTP), som danner grundlaget for kommunikationen mellem webbrowsere og webservere. De gør det muligt at markere status for en HTTP-...

SEO og HTTP-statuskoder: En omfattende analyse

Optimering af en hjemmeside til søgemaskiner (SEO) er en kompleks opgave. Et af de ofte oversete, men afgørende aspekter for en god placering er HTTP-statuskoder. Disse små, trecifrede koder inform...

Forfatter: Tony Brüser
Forfatter: Tony Brüser

Tony Brüser er en entusiastisk webudvikler med en forkærlighed for HTTP-statuskoder.

LinkedInGitHub