404

Not Found

Oficiálna stránka Kódy podstavov
Webový server nenašiel požadovaný zdroj

Všeobecné vysvetlenie stavového kódu 404

Stavový kód 404 Not Found znamená, že server nemohol nájsť zdroj pod zadanou adresou URL. Táto správa je najznámejšou chybovou správou aj medzi netechnickými používateľmi, pretože aj veľké webové stránky majú pevnú štruktúru odkazov a chybová správa 404 Not Found sa vyhadzuje častejšie.

Špecifikácia stavového kódu HTTP 404

Stavový kód 404 Not Found znamená, že pôvodný server nenašiel aktuálnu reprezentáciu cieľového prostriedku alebo nie je ochotný zverejniť jej existenciu. Stavový kód 404 Not Found neuvádza, či je táto chýbajúca reprezentácia dočasná alebo trvalá; stavový kód 410 (Gone) sa uprednostňuje pred kódom 404 Not Found, ak pôvodný server vie, pravdepodobne na základe nejakých konfigurovateľných prostriedkov, že tento stav bude pravdepodobne trvalý. Odpoveď 404 Not Found sa štandardne ukladá do vyrovnávacej pamäte, t. j. ak definícia metódy alebo explicitné ovládacie prvky vyrovnávacej pamäte neuvádzajú inak (pozri oddiel 4.2.2 [RFC7234]).

Zdroj / Citát z: Stavový kód HTTP 404 Not Found je špecifikovaný v časti 6.5.4. časti RFC7231.

Ako vyhodiť stavový kód 404 pomocou PHP?

Na vyhodenie stavového kódu HTTP 404 na webovej stránke možno použiť funkciu PHP http_response_code. Syntax je nasledovná: http_response_code(404) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Testovanie stavového kódu HTTP 404

Aby bolo možné zobraziť stavový kód HTTP (v tomto prípade 404 Not Found) a ďalšie informácie na strane klienta, je potrebné otvoriť vývojovú konzolu pomocou klávesu F12. Potom prejdite na kartu "Sieť". Teraz je možné otvoriť stránku, webová stránka (príklad index.php) by mala byť viditeľná na karte siete. Tú je potrebné vybrať a potom je potrebné vybrať sekciu Herder. Používateľovi sa potom zobrazí nasledujúci výsledok:

Stavový kód 404 Not Found
Prehľad
URL: https://http-statuscode.com/errorCodeExample.php?code=404
Stav: 404 Not Found
Tieto: Network
IP adresa: XX.XX.XX.XX
Stavový kód 404 Not Found

Ako vyriešim problém so stavovým kódom 404?

Kód stavu 404 Not Found sa môže vyskytnúť z rôznych dôvodov. Niektoré sú triviálne, iné sú zložitejšie. Najpravdepodobnejším dôvodom je nesprávne zadaná adresa URL alebo nesprávne nastavený odkaz na internú stránku. Ďalšou možnosťou je, že odkazovaná stránka bola z webového servera odstránená a nebol nastavený žiadny následný stavový kód, napríklad 410 (Gone).

Môže sa však vyskytnúť aj trochu komplikovanejší vzorec chyby. Ak je zabezpečené, že adresa URL nie je chybne zadaná ani zdroj nebol odstránený, môže byť chybné aj presmerovanie zo súboru "htaccess". Chybné presmerovania možno často odhaliť pomocou webových nástrojov.

Ako poslednú pravdepodobnú možnosť možno zvážiť aj problém s ukladaním do vyrovnávacej pamäte. Buď už bol problém vyriešený na strane servera, ale vyrovnávacia pamäť prehliadača nenačíta stránku nanovo, ale z lokálnej pamäte, alebo webový server tiež nenačíta aktuálnu verziu. V tomto prípade by sa mala vymazať vyrovnávacia pamäť na strane klienta aj na strane servera.

Ako vytvoriť vlastnú chybovú stránku pre stavový kód 404

Vytvorenie vlastnej chybovej stránky 404 Not Found je pomerne jednoduché v prípade webových serverov Apache aj NGINX.

Apache Webserver

Webový server Apache je jedným z najbežnejších webových serverov na internete. Ak chcete vytvoriť vlastnú chybovú stránku 404 Not Found v serveri "Apache", je potrebné vykonať nasledujúcu zmenu v nasledujúcom súbore.

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

NGINX Webserver

Podobne ako webový server Apache, aj NGINX je na internete široko používaný. Ak chcete vytvoriť vlastnú chybovú stránku 404 Not Found v serveri "NGINX", je potrebné vykonať nasledujúcu zmenu v nasledujúcom súbore.

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

Kompatibilita stavového kódu 404 s prehliadačom

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

Aké účinky má stavový kód 404 na SEO?

Vo svete optimalizácie pre vyhľadávače (SEO) je stavový kód 404 Not Found "Nenájdené" viac než len obyčajná chybová správa. Má reálny a hmatateľný vplyv na spôsob, akým vyhľadávače vnímajú a hodnotia webové stránky.

Keď sa používateľ alebo prehľadávač vyhľadávača pokúsi získať prístup na stránku, ktorá neexistuje, a preto vráti chybu 404 Not Found, vyhľadávače to interpretujú ako neexistujúcu stránku. Ojedinelá chyba 404 Not Found tu a tam nemusí mať nevyhnutne drastický vplyv na hodnotenie vyhľadávačov. Hromadenie takýchto chýb však môže vyhľadávačom signalizovať, že webová lokalita nie je dobre udržiavaná alebo aktualizovaná.

Častý výskyt chýb 404 Not Found môžu vyhľadávače vnímať ako indikátor zlej štruktúry alebo údržby webovej lokality. To zasa môže mať negatívny vplyv na dôveru, ktorú vyhľadávač k webovej lokalite má. A vo svete SEO je dôvera všetko. Webová lokalita, ktorej vyhľadávače dôverujú, má tendenciu sa lepšie umiestňovať vo výsledkoch vyhľadávania.

Ako už bolo spomenuté, každá webová lokalita má rozpočet na prehľadávanie. Ten sa vzťahuje na počet stránok, ktoré prehľadávač vyhľadávača navštívi v danom časovom období. Príliš veľa chýb 404 Not Found môže spôsobiť, že značná časť tohto rozpočtu sa premrhá na neexistujúce stránky. To znamená, že nový alebo aktualizovaný obsah môžu vyhľadávače objavovať a indexovať dlhšie.

Dalším dôležitým problémom je strata spätných odkazov v dôsledku chýb 404 Not Found. Spätné odkazy sú kľúčovým faktorom hodnotenia, a ak externá stránka odkazuje na adresu URL, ktorá vráti chybu 404 Not Found, vyhľadávače už nebudú tento odkaz považovať za pozitívny faktor hodnotenia.

Shrnuté, hoci sa chyby 404 Not Found môžu na prvý pohľad zdať neškodné, môžu mať vážny vplyv na hodnotenie webovej lokality vo vyhľadávači. Preto je v najlepšom záujme správcu webu tieto chyby pravidelne monitorovať a opravovať, aby si webová lokalita udržala čo najlepšiu pozíciu vo výsledkoch vyhľadávania.

Konštanty v programovacích jazykoch

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

Príklad pre "požiadavku klienta" a "odpoveď servera" so stavovým kódom HTTP 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>

Kódy podstavov stavového kódu 404

Podstavové stavové kódy sú čisto technické a nikdy by sa nemali posielať používateľovi. Ak sa napríklad vyhodí stavový kód 404.1, môže sa zaznamenať, ale používateľovi sa pošle stavový kód 404.:
404.0 Not found
HTTP IIS, Neoficiálne
404.1 Site Not Found
HTTP IIS, Neoficiálne
404.2 ISAPI or CGI restriction.
HTTP IIS, Neoficiálne
404.3 MIME type restriction.
HTTP IIS, Neoficiálne
404.4 No handler configured
HTTP IIS, Neoficiálne
404.5 Denied by request filtering configuration
HTTP IIS, Neoficiálne
404.6 Verb denied
HTTP IIS, Neoficiálne
404.7 File extension denied
HTTP IIS, Neoficiálne
404.8 Hidden namespace
HTTP IIS, Neoficiálne
404.9 Files attribute hidden
HTTP IIS, Neoficiálne
404.10 Request header too long
HTTP IIS, Neoficiálne
404.11 Request contains double escape sequence
HTTP IIS, Neoficiálne
404.12 Request contains high-bit characters
HTTP IIS, Neoficiálne
404.13 Content length too large
HTTP IIS, Neoficiálne
404.14 Request URL too long
HTTP IIS, Neoficiálne
404.15 Query string too long
HTTP IIS, Neoficiálne
404.16 DAV request sent to the static file handler
HTTP IIS, Neoficiálne
404.17 Dynamic content mapped to the static file handler
HTTP IIS, Neoficiálne
404.18 Querystring sequence denied
HTTP IIS, Neoficiálne
404.19 Denied by filtering rule
HTP IIS, Neoficiálne
404.20 Too Many URL Segments
HTTP IIS, Neoficiálne
404.501 Too many requests from the same client IP; Dynamic IP Restriction Concurrent request rate limit reached
HTTP IIS, Neoficiálne
404.502 Too many requests from the same client IP; Dynamic IP Restriction Maximum request rate limit reached
HTTP IIS, Neoficiálne
404.503 the IP address is included in the Deny list of IP Restriction
HTTP ISS, Neoficiálne
404.504 the host name is included in the Deny list of IP Restriction
HTTP IIS, Neoficiálne

Články na blogu

Stavové kódy HTTP: Podrobná analýza chybových správ 404 Not Found a 410 Gone

Stavové kódy HTTP sú základnou súčasťou protokolu HTTP (Hypertext Transfer Protocol), ktorý tvorí základ komunikácie medzi webovými prehliadačmi a webovými servermi. Umožňujú označiť stav požiadavk...

SEO a stavové kódy HTTP: Komplexná analýza

Optimalizácia webovej stránky pre vyhľadávače (SEO) je zložitá záležitosť. Jedným z často prehliadaných, ale pre dobré umiestnenie kľúčových aspektov sú stavové kódy HTTP. Tieto malé trojmiestne kó...

Autor: Tony Brüser
Autor: Tony Brüser

Tony Brüser je nadšený webový vývojár so záľubou v stavových kódoch HTTP.

LinkedInGitHub