Det mye omtalte tallet 404 i feilkoden "404 Not Found" er ikke et tilfeldig valgt tall, men en del av 4xx-gruppen i HTTP-protokollen som klassifiserer klientfeil. I motsetning til den utbredte CERN-rommyten, oppsto koden som en standardisert statuskode definert i HTTP-standarder for svaret "Not Found".
Tallet 404 i advarselen "404 Not Found", som brukere ofte møter når de prøver å åpne en side som ikke finnes på internett, er ikke et tilfeldig valgt tall. Ifølge kilden oppsto denne koden som en del av HTTP-protokollens systematiske statuskodestruktur og har med årene blitt et gjenkjennelig symbol i internettkulturen.
Brukere møter vanligvis denne koden når de skriver inn en feilstavet adresse, klikker på en gammel lenke eller når innholdet de vil åpne er slettet. 404 har blitt så utbredt at mange selskaper har begynt å legge til egne design, spill og vitser på sine feilsider.
Hva betyr 404 Not Found egentlig?
Når en nettadresse åpnes, sender nettleseren en forespørsel til den aktuelle serveren via HTTP. Serveren behandler denne forespørselen og returnerer et svar til nettleseren som inneholder en tresifret statuskode.
Når operasjonen er fullført, brukes vanligvis koden 200. Ved omdirigering eller serverrelaterte problemer kan man imidlertid støte på forskjellige koder.
Koden 404 indikerer at klienten kan nå serveren, men at serveren ikke finner den etterspurte ressursen. Derfor bør man ikke tro at internettforbindelsen er helt brutt når man ser 404; serveren har svart, men den etterspurte siden finnes ikke på den adressen.
Årsaken kan være en feilstavet URL. En side som tidligere eksisterte kan ha blitt slettet, lenken kan ha blitt endret, eller innholdet kan ha blitt flyttet til en annen adresse.
Hva betyr det første 4-tallet i 404?
I HTTP-statuskoder er ikke tallene vilkårlige; kodene er delt inn i bestemte klasser basert på det første sifferet. 4-tallet i begynnelsen av 404 indikerer gruppen av statuskoder knyttet til klientfeil.
Denne gruppen inneholder også andre koder som 400 Bad Request, 401 Unauthorized, 403 Forbidden og 429 Too Many Requests. Forskjellen mellom dem skyldes typen problem.
Ved kode 403 forstår serveren forespørselen, men kan nekte tilgang til ressursen. Ved 404 er den etterspurte ressursen ikke funnet. Koden 429 brukes for å indikere at det er sendt for mange forespørsler i løpet av kort tid.
Ved serverrelaterte problemer trer koder som begynner med 5 i kraft. 500 Internal Server Error og 503 Service Unavailable er eksempler på denne gruppen.
Dermed vurderes 404 ikke som et mystisk tall valgt alene, men som en del av HTTPs systematiske statuskodestruktur.
Så hvorfor ble akkurat 404 valgt?
I HTTPs tidlige dager ble statuskoder organisert for å kunne uttrykke protokollens ulike resultater på en standardisert måte. 4xx-området ble forbeholdt feilsituasjoner knyttet til klienten, og innenfor denne gruppen ble koder med forskjellige betydninger definert.
Ifølge kilden var 404 eksplisitt definert som statuskoden "Not Found" i HTTP/1.0s RFC 1945-dokument, publisert i 1996. Koden fortsatte å bli brukt i senere HTTP-standarder.
Det finnes ikke et eget ord eller skjult betydning for hvert siffer i tallet 404. Det første sifferet angir kodens generelle klasse, mens de resterende sifrene uttrykker den definerte koden innenfor denne klassen.
Lignende logikk kan sees i andre HTTP-koder. Vellykkede svar samles i 2xx, omdirigeringer i 3xx, klientfeil i 4xx og serverfeil i 5xx. Denne ordningen gjør at utviklere kan vurdere serverens svar programmatisk uten å være avhengige av bare meldingsteksten.
Er historien om rom 404 på CERN sann?
Ifølge den mest utbredte historien som sirkulerer på internett om 404, befant teamet som arbeidet med World Wide Web seg i rom 404 på CERN. I forskjellige versjoner av fortellingen hevdes det at webservere var plassert i dette rommet, eller at brukere henvendte seg til dette rommet for å hente filene de ønsket.
Men ifølge kilden finnes det ikke pålitelige historiske bevis som støtter denne påstanden. Selv om arbeidet til Tim Berners-Lee, som utviklet World Wide Web på CERN, er sentralt i HTTPs opprinnelse, er ikke fortellingen om at koden "404 Not Found" kommer fra et rom nummer 404 på CERN bekreftet av kilder om webhistorien.
Det sies til og med at CERN i sine uttalelser om denne historien har påpekt at fortellingen om det aktuelle rommet er en myte.
Årsaken til at slike historier spres virker imidlertid forståelig. Prosessene med å lage tekniske standarder kan virke kjedelige for de fleste brukere, mens et mystisk rom og dets nummer som spres over hele internett, kan være mye mer minneverdig.
Hvordan oppsto HTTP-feilkoder?
HTTPs historie strekker seg tilbake til World Wide Webs første år. Tim Berners-Lee arbeidet på CERN med et informasjonssystem der dokumenter på forskjellige datamaskiner kunne kobles sammen via lenker.
For at nettet skulle fungere var ikke HTML og URL nok; det var også behov for en protokoll som bestemte hvordan nettleseren og serveren skulle kommunisere. HTTP tok på seg denne oppgaven.
De første HTTP-versjonene var mye enklere enn dagens protokoll. Etter hvert som nettet utviklet seg, ble kommunikasjonen mellom nettleser og server mer detaljert, og det ble nødvendig å standardisere måten å uttrykke om en forespørsel var vellykket, omdirigert eller mislykket.
Takket være den tresifrede strukturen kunne programvare raskt tolke resultatet. Koder som begynner med 2 representerte generelt klassen for vellykkede svar, de som begynner med 3 representerte omdirigeringer, de som begynner med 4 representerte feilsituasjoner knyttet til klienten, og de som begynner med 5 representerte serverfeil.
Dette systemet eksisterer fortsatt i dag som en av nettets grunnleggende deler. Brukere ser ikke de fleste av disse kodene fordi nettleseren utfører operasjonene i bakgrunnen. 404 har imidlertid fått en annen skjebne; siden situasjonen der den etterspurte siden ikke finnes, direkte gjenspeiles for brukeren, har den gått fra å være en teknisk protokollkode til å bli et uttrykk alle kjenner.
Hvorfor ser vi ikke 404 på hver slettet side?
Når en nettside ikke lenger eksisterer, møter man ikke alltid koden 404. Årsaken er at nettsteder kan bruke andre HTTP-koder for forskjellige situasjoner.
Hvis et innhold er flyttet til en ny adresse, kan serveren automatisk omdirigere brukeren til den nye siden. Ved permanente omdirigeringer brukes koder som 301 for dette formålet, og siden nettleseren utfører operasjonen automatisk, ser brukeren ofte ikke selve koden.
For en ressurs som er permanent fjernet, er det også mulig å bruke koden 410 Gone. Forskjellen fra 404 er subtil, men betydningsfull; 404 indikerer at serveren ikke finner den etterspurte ressursen, mens 410 tydeligere uttrykker at det er kjent at ressursen er fjernet.
I virkelige nettsteder anvender ikke alle systemer denne distinksjonen like nøye, og mye slettet innhold returnerer direkte 404.
I tillegg finnes det en situasjon som kalles "soft 404". Mens siden viser brukeren meldingen "innhold ikke funnet", kan serveren teknisk sett svare med 200 OK. For brukeren finnes ikke siden, men HTTP-messig ser forespørselen vellykket ut. Dette kan også påvirke hvordan søkemotorer tolker siden.
Med andre ord betyr ikke det at det står "Siden ble ikke funnet" på skjermen, nødvendigvis at serveren faktisk returnerer HTTP 404-koden.
Hvordan ble 404 en del av internettkulturen?
HTTP inneholder hundrevis av forskjellige statuskoder, men den vanlige internettbrukeren trenger ikke å kjenne de fleste av dem. 404 skiller seg ut som et stort unntak i denne sammenhengen.
Hovedårsaken er at brukere møter denne koden direkte og ofte. Etter hvert som nettsteder vokser, endres lenker, gammelt innhold fjernes og feil adresser deles. Som et resultat blir 404-sider en uunngåelig del av nettopplevelsen.
Etter hvert begynte webdesignere å bruke den standardiserte feilmeldingen mer kreativt. Noen nettsteder la til små spill på 404-sidene sine, noen brukte humoristiske bilder, og andre ledet besøkende til riktig innhold via et søkefelt eller en lenke til hjemmesiden.
Dermed gikk uttrykket "404" utover sin tekniske betydning og ble til og med en spøk som brukes i internettkulturen for å beskrive ting som er tapt, ikke funnet eller fraværende.
Det interessante er at det ikke ligger et mystisk rom eller en glemt CERN-historie bak dette så kjente tallet. Den virkelige historien til 404 er mye mer teknisk; koden oppsto fra behovet for å klassifisere nettets forskjellige resultater på en ordnet og maskinlesbar måte.