404

Not Found

Virallinen Alatilakoodit
Verkkopalvelin ei löytänyt pyydettyä resurssia

Yleinen selitys 404-tilakoodista

Tilakoodilla 404 Not Found palvelin ei löytänyt resurssia määritellystä URL-osoitteesta. Tämä viesti on tunnetuin virheilmoitus jopa ei-teknisten käyttäjien keskuudessa, sillä suurillakin verkkosivustoilla on jäykät linkkirakenteet, ja 404 Not Found-virheilmoitus heitetään useammin.

HTTP-tilakoodin 404 määrittely

Tilakoodi 404 Not Found ilmaisee, että alkuperäpalvelin ei ole löytänyt kohderesurssin nykyistä esitystä tai ei ole halukas paljastamaan sen olemassaoloa. Tilakoodi 404 Not Found ei kerro, onko puuttuva esitys tilapäinen vai pysyvä; tilakoodi 410 (Gone) on parempi kuin 404 Not Found, jos alkuperäispalvelin tietää, oletettavasti jollakin konfiguroitavalla keinolla, että tila on todennäköisesti pysyvä. 404 Not Found-vastaus on oletusarvoisesti välimuistissa, ellei menetelmämäärittelyssä tai nimenomaisissa välimuistivalvontakeinoissa toisin ilmoiteta (ks. [RFC7234], kohta 4.2.2).

Lähde / Lainaus: HTTP-tilakoodi 404 Not Found on määritelty 6.5.4.:n RFC7231 kohdassa RFC7231.

Kuinka heittää 404-tilakoodi PHP:llä?

HTTP-tilakoodin 404 heittämiseen verkkosivulle voidaan käyttää PHP-funktiota http_response_code. Syntaksi on seuraava: http_response_code(404) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Testaa HTTP-tilakoodi 404

Jotta HTTP-tilakoodi (tässä tapauksessa 404 Not Found) ja muut tiedot voidaan näyttää asiakaspuolella, kehityskonsoli on avattava F12-näppäimellä. Siirry sitten "Network"-välilehdelle. Nyt sivu voidaan avata, verkkosivuston (esimerkki index.php) pitäisi näkyä verkko-välilehdellä. Tämä on valittava ja sen jälkeen on valittava Herder-osio. Käyttäjä näkee sitten seuraavan tuloksen:

Tilakoodi 404 Not Found
Yleiskatsaus
URL: https://http-statuscode.com/errorCodeExample.php?code=404
Tila: 404 Not Found
Nuo: Network
IP-osoite: XX.XX.XX.XX
Tilakoodi 404 Not Found

Miten ratkaisen 404-tilakoodiin liittyvän ongelman?

Tilakoodi 404 Not Found voi johtua eri syistä. Jotkut ovat triviaaleja, toiset monimutkaisempia. Todennäköisin syy on, että URL-osoite on kirjoitettu väärin tai linkki sisäiselle sivulle on asetettu väärin. Toinen mahdollisuus on se, että linkitetty sivu poistettiin verkkopalvelimelta eikä jatkotilakoodia, kuten 410 (poissa), asetettu.

Mutta voi olla myös hieman monimutkaisempi virhemalli. Jos varmistetaan, että URL-osoite ei ole kirjoitettu väärin eikä resurssia ole poistettu, myös "htaccess"-tiedostosta tehty uudelleenohjaus voi olla virheellinen. Virheelliset uudelleenohjaukset voidaan usein havaita web-työkaluilla.

Viimeisenä todennäköisenä mahdollisuutena voidaan harkita myös välimuistiongelmaa. Joko ongelma on jo ratkaistu palvelimen puolella, mutta selaimen välimuisti ei lataa sivua uudelleen, vaan paikallisesta muistista, tai web-palvelin ei myöskään lataa nykyistä versiota. Tällöin välimuisti pitäisi tyhjentää sekä asiakas- että palvelinpuolella.

Miten luoda oma virhesivu tilakoodille 404?

Oman 404 Not Found-virhesivun luominen on suhteellisen helppoa sekä Apache- että NGINX-verkkopalvelimilla.

Apache Webserver

Verkkopalvelin "Apache" on yksi Internetin yleisimmistä verkkopalvelimista. Jotta voit luoda oman 404 Not Found-virhesivun "Apachessa", seuraavaan tiedostoon on tehtävä seuraava muutos.

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

NGINX Webserver

Samanlainen kuin verkkopalvelin "Apache", "NGINX" on myös laajalti käytössä Internetissä. Jotta voit luoda oman 404 Not Found-virhesivun "NGINX"-palvelimessa, seuraavaan tiedostoon on tehtävä seuraava muutos.

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

Selainyhteensopivuus 404-tilakoodin kanssa

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

Mitä SEO-vaikutuksia 404-tilakoodilla on?

Hakukoneoptimoinnin (SEO) maailmassa 404 Not Found-tilakoodi "Ei löytynyt" on enemmän kuin pelkkä virheilmoitus. Sillä on todellisia ja konkreettisia vaikutuksia siihen, miten hakukoneet havaitsevat ja arvioivat verkkosivuston.

Kun käyttäjä tai hakukoneiden indeksoiva ohjelma yrittää päästä sivulle, jota ei ole olemassa, ja palauttaa siksi 404 Not Found-virheilmoituksen, hakukoneet tulkitsevat tämän olemattomaksi sivuksi. Satunnaisella 404 Not Found-virheellä silloin tällöin ei välttämättä ole dramaattista vaikutusta hakukoneiden sijoituksiin. Tällaisten virheiden kasaantuminen voi kuitenkin viestiä hakukoneille, että verkkosivusto ei ole hyvin ylläpidetty tai päivitetty.

Hakukoneet voivat pitää 404 Not Found-virheiden toistuvaa esiintymistä osoituksena verkkosivuston huonosta rakenteesta tai ylläpidosta. Tämä puolestaan voi vaikuttaa kielteisesti hakukoneen luottamukseen sivustoa kohtaan. Ja SEO:n maailmassa luottamus on kaikki kaikessa. Verkkosivusto, johon hakukoneet luottavat, sijoittuu yleensä paremmin hakutuloksissa.

Myös, kuten aiemmin mainittiin, jokaisella verkkosivustolla on indeksointibudjetti. Tällä tarkoitetaan sitä, kuinka monta sivua hakukoneen indeksoiva ohjelma vierailee tietyn ajanjakson aikana. Liian monet 404 Not Found-virheet voivat johtaa siihen, että merkittävä osa tästä budjetista tuhlataan olemattomiin sivuihin. Tämä tarkoittaa, että hakukoneiden voi kestää kauemmin löytää ja indeksoida uutta tai päivitettyä sisältöä.

Toinen tärkeä asia on 404 Not Found-virheiden aiheuttama takalinkkien menetys. Takalinkit ovat ratkaiseva sijoitustekijä, ja jos ulkoinen sivu linkittää URL-osoitteeseen, joka palauttaa 404 Not Found-virheen, hakukoneet eivät enää pidä linkkiä positiivisena sijoitustekijänä.

Yhteenvetona voidaan todeta, että vaikka 404 Not Found-virheet saattavat vaikuttaa päällisin puolin harmittomilta, niillä voi olla vakava vaikutus verkkosivuston sijoitukseen hakukoneissa. Siksi on webmasterin edun mukaista seurata ja korjata näitä virheitä säännöllisesti, jotta sivusto säilyttää parhaan mahdollisen asemansa hakutuloksissa.

Vakiot ohjelmointikielissä

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

Esimerkki "asiakkaan pyynnöstä" ja "palvelimen vastauksesta" HTTP-tilakoodilla 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>

Tilakoodin 404 alatilakoodit

Alatilakoodit ovat puhtaasti teknisiä, eikä niitä pitäisi koskaan lähettää käyttäjälle. Jos esimerkiksi heitetään tilakoodi 404.1, se voidaan kirjata, mutta käyttäjälle lähetetään tilakoodi 404.:
404.0 Not found
HTTP IIS, Epävirallinen
404.1 Site Not Found
HTTP IIS, Epävirallinen
404.2 ISAPI or CGI restriction.
HTTP IIS, Epävirallinen
404.3 MIME type restriction.
HTTP IIS, Epävirallinen
404.4 No handler configured
HTTP IIS, Epävirallinen
404.5 Denied by request filtering configuration
HTTP IIS, Epävirallinen
404.6 Verb denied
HTTP IIS, Epävirallinen
404.7 File extension denied
HTTP IIS, Epävirallinen
404.8 Hidden namespace
HTTP IIS, Epävirallinen
404.9 Files attribute hidden
HTTP IIS, Epävirallinen
404.10 Request header too long
HTTP IIS, Epävirallinen
404.11 Request contains double escape sequence
HTTP IIS, Epävirallinen
404.12 Request contains high-bit characters
HTTP IIS, Epävirallinen
404.13 Content length too large
HTTP IIS, Epävirallinen
404.14 Request URL too long
HTTP IIS, Epävirallinen
404.15 Query string too long
HTTP IIS, Epävirallinen
404.16 DAV request sent to the static file handler
HTTP IIS, Epävirallinen
404.17 Dynamic content mapped to the static file handler
HTTP IIS, Epävirallinen
404.18 Querystring sequence denied
HTTP IIS, Epävirallinen
404.19 Denied by filtering rule
HTP IIS, Epävirallinen
404.20 Too Many URL Segments
HTTP IIS, Epävirallinen
404.501 Too many requests from the same client IP; Dynamic IP Restriction Concurrent request rate limit reached
HTTP IIS, Epävirallinen
404.502 Too many requests from the same client IP; Dynamic IP Restriction Maximum request rate limit reached
HTTP IIS, Epävirallinen
404.503 the IP address is included in the Deny list of IP Restriction
HTTP ISS, Epävirallinen
404.504 the host name is included in the Deny list of IP Restriction
HTTP IIS, Epävirallinen

Viihdyttäviä meemejä HTTP-tilakoodista 404

Blogiartikkelit

HTTP-tilakoodit: 404 Not Found ja 410 Gone -virheilmoitusten yksityiskohtainen analyysi.

HTTP-tilakoodit ovat olennainen osa HTTP-protokollaa (Hypertext Transfer Protocol), joka muodostaa perustan verkkoselaimien ja -palvelimien väliselle viestinnälle. Niiden avulla HTTP-pyynnön ja -va...

SEO ja HTTP-tilakoodit: Kokonaisvaltainen analyysi

Sivuston optimointi hakukoneita varten (SEO) on monimutkainen tehtävä. Yksi usein huomiotta jätetyistä mutta hyvän sijoituksen kannalta ratkaisevista seikoista ovat HTTP-tilakoodit. Nämä pienet, ko...

Kirjoittaja: Tony Brüser
Kirjoittaja: Tony Brüser

Tony Brüser on innostunut web-kehittäjä, jolla on mieltymys HTTP-statuskoodeihin.

LinkedInGitHub