404

Not Found

Uradna stran Oznake podstav
Spletni strežnik ni našel zahtevanega vira

Splošna razlaga kode stanja 404

Pri kodi stanja 404 Not Found strežnik ni mogel najti vira pod določenim naslovom URL. To sporočilo je najbolj znano sporočilo o napaki tudi med uporabniki, ki niso tehnični strokovnjaki, saj imajo tudi velika spletišča toge strukture povezav in se sporočilo o napaki 404 Not Found vrže pogosteje.

Specifikacija kode stanja HTTP 404

Koda stanja 404 Not Found pomeni, da izvorni strežnik ni našel trenutne predstavitve ciljnega vira ali pa je ni pripravljen razkriti. Statusna koda 404 Not Found ne navaja, ali je ta manjkajoča predstavitev začasna ali trajna; statusna koda 410 (Gone) ima prednost pred 404 Not Found, če izvorni strežnik ve, verjetno na kakšen nastavljiv način, da bo stanje verjetno trajno. Odgovor 404 Not Found je privzeto predpomnilniški, tj. če opredelitev metode ali izrecni nadzor predpomnilnika ne navaja drugače (glejte oddelek 4.2.2 [RFC7234]).

Vir / citat iz: Koda stanja HTTP 404 Not Found je določena v razdelku 6.5.4. oddelka RFC7231.

Kako s PHP vrniti kodo stanja 404?

Za prikaz kode stanja HTTP 404 na spletni strani lahko uporabite funkcijo PHP http_response_code. Sintaksa je naslednja: http_response_code(404) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Preizkus kode stanja HTTP 404

Če želite prikazati kodo stanja HTTP (v tem primeru 404 Not Found) in druge informacije na strani odjemalca, morate s tipko F12 odpreti razvojno konzolo. Nato pojdite na zavihek "Omrežje". Zdaj lahko odprete stran, spletno mesto (primer index.php) mora biti vidno v zavihku omrežje. To je treba izbrati, nato pa je treba izbrati razdelek Herder. Uporabnik bo nato videl naslednji rezultat:

Koda stanja 404 Not Found
Pregled
URL: https://http-statuscode.com/errorCodeExample.php?code=404
Status: 404 Not Found
Ti: Network
Naslov IP: XX.XX.XX.XX
Koda stanja 404 Not Found

Kako lahko rešim težavo s kodo stanja 404?

Koda stanja 404 Not Found se lahko pojavi iz različnih razlogov. Nekateri so trivialni, drugi so bolj zapleteni. Najverjetnejši razlog je napačno zapisan naslov URL ali napačno nastavljena povezava na notranjo stran. Druga možnost je, da je bila povezana stran izbrisana iz spletnega strežnika in ni bila nastavljena nobena nadaljnja statusna koda, kot je 410 (Gone).

Najdejo pa se lahko tudi nekoliko bolj zapleteni vzorci napak. Če je zagotovljeno, da niti naslov URL ni napačno zapisan niti vir ni bil izbrisan, je lahko napačna tudi preusmeritev iz datoteke "htaccess". Napačne preusmeritve je pogosto mogoče odkriti s spletnimi orodji.

Kot zadnjo verjetno možnost lahko upoštevamo tudi težavo s predpomnilnikom. Ali je bila težava na strani strežnika že odpravljena, vendar predpomnilnik brskalnika ne naloži strani znova, temveč iz lokalnega pomnilnika, ali pa tudi spletni strežnik ne naloži trenutne različice. V tem primeru je treba predpomnilnik počistiti tako na strani odjemalca kot na strani strežnika.

Kako ustvariti lastno stran z napako za kodo stanja 404

Ustvarjanje lastne strani z napako 404 Not Found je razmeroma enostavno tako v spletnih strežnikih Apache kot NGINX.

Apache Webserver

Spletni strežnik Apache je eden najpogostejših spletnih strežnikov v internetu. Če želite v strežniku "Apache" ustvariti lastno stran z napako 404 Not Found, morate v naslednji datoteki narediti naslednjo spremembo.

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

NGINX Webserver

Podobno kot spletni strežnik Apache se tudi NGINX pogosto uporablja na internetu. Če želite v strežniku "NGINX" ustvariti lastno stran z napako 404 Not Found, morate v naslednji datoteki narediti naslednjo spremembo.

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

Združljivost kode stanja 404 z brskalniki

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

Kakšne učinke na SEO ima koda stanja 404?

V svetu optimizacije za iskalnike (SEO) je statusna koda 404 Not Found "Ni najden" več kot le preprosto sporočilo o napaki. Ima dejanske in oprijemljive učinke na način, kako iskalniki dojemajo in ocenjujejo spletno mesto.

Ko uporabnik ali iskalnik poskuša dostopati do strani, ki je ni, in zato vrne napako 404 Not Found, iskalniki to razumejo kot neobstoječo stran. Občasna napaka 404 Not Found tu in tam ne bo nujno drastično vplivala na uvrstitev v iskalnikih. Vendar pa lahko kopičenje takšnih napak iskalnikom sporoča, da spletno mesto ni dobro vzdrževano ali posodobljeno.

Pogosto pojavljanje napak 404 Not Found lahko iskalniki razumejo kot pokazatelj slabe strukture ali vzdrževanja spletnega mesta. To pa lahko negativno vpliva na zaupanje iskalnika v spletno mesto. V svetu SEO pa je zaupanje vse. Spletno mesto, ki mu iskalniki zaupajo, je v rezultatih iskanja praviloma bolje uvrščeno.

Kot smo že omenili, ima vsako spletno mesto na voljo proračun za pregledovanje. Ta se nanaša na število strani, ki jih bo iskalnik obiskal v določenem časovnem obdobju. Zaradi prevelikega števila napak 404 Not Found se lahko velik del tega proračuna zapravi za neobstoječe strani. To pomeni, da lahko traja dlje časa, da iskalniki odkrijejo in indeksirajo novo ali posodobljeno vsebino.

Drugo pomembno vprašanje je izguba povratnih povezav zaradi napak 404 Not Found. Povratne povezave so ključni dejavnik razvrščanja, in če zunanja stran vodi na naslov URL, ki vrne napako 404 Not Found, iskalniki te povezave ne bodo več obravnavali kot pozitiven dejavnik razvrščanja.

Če povzamemo, čeprav so napake 404 Not Found na videz videti neškodljive, lahko resno vplivajo na uvrstitev spletnega mesta v iskalnikih. Zato je v interesu spletnega skrbnika, da te napake redno spremlja in odpravlja ter tako zagotovi, da spletno mesto ohrani najboljši možni položaj v rezultatih iskanja.

Konstante v programskih jezikih

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

Primer za "zahtevo odjemalca" in "odgovor strežnika" s kodo stanja 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>

Podkodice stanja kode stanja 404

Podkodne kode stanja so izključno tehnične narave in se uporabniku nikoli ne smejo pošiljati. Če se na primer vrže koda stanja 404.1, se lahko zabeleži, vendar se uporabniku pošlje koda stanja 404.:
404.0 Not found
HTTP IIS, Neuradno
404.1 Site Not Found
HTTP IIS, Neuradno
404.2 ISAPI or CGI restriction.
HTTP IIS, Neuradno
404.3 MIME type restriction.
HTTP IIS, Neuradno
404.4 No handler configured
HTTP IIS, Neuradno
404.5 Denied by request filtering configuration
HTTP IIS, Neuradno
404.6 Verb denied
HTTP IIS, Neuradno
404.7 File extension denied
HTTP IIS, Neuradno
404.8 Hidden namespace
HTTP IIS, Neuradno
404.9 Files attribute hidden
HTTP IIS, Neuradno
404.10 Request header too long
HTTP IIS, Neuradno
404.11 Request contains double escape sequence
HTTP IIS, Neuradno
404.12 Request contains high-bit characters
HTTP IIS, Neuradno
404.13 Content length too large
HTTP IIS, Neuradno
404.14 Request URL too long
HTTP IIS, Neuradno
404.15 Query string too long
HTTP IIS, Neuradno
404.16 DAV request sent to the static file handler
HTTP IIS, Neuradno
404.17 Dynamic content mapped to the static file handler
HTTP IIS, Neuradno
404.18 Querystring sequence denied
HTTP IIS, Neuradno
404.19 Denied by filtering rule
HTP IIS, Neuradno
404.20 Too Many URL Segments
HTTP IIS, Neuradno
404.501 Too many requests from the same client IP; Dynamic IP Restriction Concurrent request rate limit reached
HTTP IIS, Neuradno
404.502 Too many requests from the same client IP; Dynamic IP Restriction Maximum request rate limit reached
HTTP IIS, Neuradno
404.503 the IP address is included in the Deny list of IP Restriction
HTTP ISS, Neuradno
404.504 the host name is included in the Deny list of IP Restriction
HTTP IIS, Neuradno

Članki na blogu

Kode stanja HTTP: Podrobna analiza sporočil o napakah 404 Not Found in 410 Gone

Kode stanja HTTP so bistveni del protokola za prenos hiperteksta (HTTP), ki je osnova za komunikacijo med spletnimi brskalniki in spletnimi strežniki. Omogočajo označevanje stanja zahteve in odgovo...

SEO in kode stanja HTTP: Celovita analiza

Optimizacija spletnega mesta za iskalnike (SEO) je zapletena naloga. Eden od pogosto spregledanih, vendar ključnih vidikov za dobro uvrstitev so kode stanja HTTP. Te majhne trimestne kode o stanju ...

Avtor: Tony Brüser
Avtor: Tony Brüser

Tony Brüser je navdušen spletni razvijalec, ki je navdušen nad kodami stanja HTTP.

LinkedInGitHub