Besplatan Referenca HTTP statusnih kodova

Pretraživa referenca za sve HTTP statusne kodove — šta svaki znači, kada se koristi i uobičajeni uzroci. Od 100 do 511.

Radi offline nakon učitavanja

61 statusni kod

100

Nastavi

Server je primio zaglavlja zahtjeva i klijent bi trebao nastaviti sa tijelom.

Koristi se za zahtjeve sa Expect: 100-continue. Server potvrđuje da je spreman primiti tijelo prije nego što ga klijent pošalje. Rijetko se viđa u modernim web aplikacijama.

RFC 9110 ↗
101

Promjena protokola

Server mijenja protokole na zahtjev klijenta.

Najčešće se koristi za WebSocket nadogradnje — klijent zahtijeva Upgrade: websocket, a server odgovara sa 101 za promjenu.

RFC 9110 ↗
102

Obrada

Server je primio zahtjev i obrađuje ga, ali odgovor još nije dostupan.

WebDAV privremeni odgovor poslan da spriječi isteke vremena kod klijenta tokom dugotrajnih operacija. Zastarjelo — moderni serveri ga ne bi trebali slati.

RFC 2518 ↗
103

Rani nagovještaji

Preliminarna zaglavlja poslana prije konačnog odgovora.

Omogućava serverima da šalju Link zaglavlja (preload/preconnect) dok se konačni odgovor još priprema, tako da pretraživači mogu ranije početi dohvatati ključne resurse.

RFC 8297 ↗
200

OK

Zahtjev je uspio.

Standardan uspješan odgovor. Značenje zavisi od HTTP metode: GET → resurs vraćen, POST/PUT → radnja završena.

RFC 9110 ↗
201

Kreirano

Novi resurs je uspješno kreiran.

Uobičajeno nakon POST-a. Odgovor bi trebao sadržavati zaglavlje Location koje pokazuje na URL novog resursa.

RFC 9110 ↗
202

Prihvaćeno

Zahtjev je prihvaćen za obradu, ali obrada nije završena.

Za asinhrone operacije — server stavlja posao u red čekanja. Klijent bi trebao provjeravati status krajnju tačku ili se vratiti kasnije.

RFC 9110 ↗
203

Neautoritativne informacije

Odgovor je izmijenjen od strane proksija koji transformiše podatke.

Zahtjev je uspio, ali je posrednik (poput keš ili transformišućeg proksija) izmijenio sadržaj iz izvornog servera — na primjer, ponovnom kompresijom slika. Rijetko u praksi.

RFC 9110 ↗
204

Nema sadržaja

Zahtjev je uspio, ali nema tijela odgovora.

Često se koristi za DELETE operacije ili PUT ažuriranja koja ne trebaju vraćati tijelo. Klijent ne bi trebao napuštati trenutnu stranicu.

RFC 9110 ↗
205

Resetovanje sadržaja

Zahtjev je uspio; klijent bi trebao resetovati prikaz dokumenta.

Kao i kod 204, tijelo se ne vraća — ali klijentu se dodatno kaže da resetuje formu ili prikaz koji je proizveo zahtjev (npr. očisti polja forme za sljedeći unos).

RFC 9110 ↗
206

Djelimičan sadržaj

Server je isporučio samo dio resursa.

Odgovor na Range zahtjev. Koriste ga video plejeri i menadžeri preuzimanja za nastavak prekinutih preuzimanja ili striming velikih datoteka.

RFC 9110 ↗
207

Više statusa

Tijelo odgovora sadrži više statusnih kodova za više operacija.

WebDAV: XML tijelo izvještava o ishodu nekoliko potpodoperacija nezavisno — npr. grupno premještanje gdje su neke stavke uspjele, a druge nisu.

RFC 4918 ↗
208

Već prijavljeno

Članovi kolekcije su već bili navedeni ranije u odgovoru.

WebDAV: koristi se unutar 207 Multi-Status odgovora kako bi se izbjeglo ponovno navođenje članova iste kolekcije kada vezivanja stvaraju petlje.

RFC 5842 ↗
226

IM korišten

Odgovor je rezultat manipulacija instance primijenjenih na resurs.

Delta enkodiranje: server vraća razliku u odnosu na prethodnu verziju umjesto cijelog resursa, čime se štedi propusnost. Vrlo rijetko implementirano.

RFC 3229 ↗
300

Više izbora

Dostupno je nekoliko reprezentacija resursa.

Server nudi više opcija (npr. različite formate ili jezike), a klijent treba odabrati jednu. Rijetko se koristi jer automatska pregovaranja o sadržaju obično to rješavaju.

RFC 9110 ↗
301

Trajno premješteno

Resurs je trajno premješten na novi URL.

Koristi se za trajne promjene URL-a — pretraživači će ažurirati svoj indeks. SEO autoritet se prenosi na novi URL.

RFC 9110 ↗
302

Pronađeno (privremeno preusmjerenje)

Resurs je privremeno na drugom URL-u.

Označava da preusmjerenje nije trajno. Keširanje je manje agresivno nego kod 301. Koristi se za slučajeve poput 'potrebna prijava, preusmjeravanje na /login'.

RFC 9110 ↗
303

Pogledaj drugo

Preusmjerenje na drugi URL koristeći GET.

Koristi se nakon POST slanja — odgovor kaže 'vaš POST je uspio, pogledajte ovaj GET URL za rezultat'. Preglednici uvijek šalju GET zahtjev na novi URL.

RFC 9110 ↗
304

Nije izmijenjeno

Keširana verzija je i dalje važeća; koristite je.

Odgovor na uslovni zahtjev (sa If-None-Match ili If-Modified-Since zaglavljima). Štedi propusnost — tijelo se ne vraća.

RFC 9110 ↗
307

Privremeno preusmjerenje

Slično kao 302, ali zadržava originalnu HTTP metodu.

Ako je originalni zahtjev bio POST, preusmjerenje također koristi POST. Moderna alternativa za 302 kada je važno zadržati metodu.

RFC 9110 ↗
308

Trajno preusmjerenje

Slično kao 301, ali zadržava originalnu HTTP metodu.

Moderna zamjena za 301 kada želite da POST zahtjevi ostanu POST nakon preusmjerenja.

RFC 9110 ↗
400

Neispravan zahtjev

Server nije mogao razumjeti zahtjev zbog neispravne sintakse.

Uobičajeni uzroci: neispravan JSON u tijelu zahtjeva, nevažeći parametri upita ili nedostajuća obavezna polja. Provjerite tijelo zahtjeva i zaglavlja.

RFC 9110 ↗
401

Neautorizovano

Potrebna je autentifikacija koja nije dostavljena.

Klijent mora priložiti akreditive za autentifikaciju (Authorization zaglavlje, kolačić, token). 'Neautorizovano' je pogrešan naziv — zapravo znači 'neautentificirano'.

RFC 9110 ↗
402

Potrebna uplata

Rezervisano za buduću upotrebu — ponekad se koristi za plaćene API planove.

Izvorno namijenjeno digitalnim plaćanjima. Moderna upotreba: API-ji ponekad vraćaju 402 kada je korisnik premašio svoju plaćenu kvotu.

RFC 9110 ↗
403

Zabranjeno

Klijent je autentificiran, ali nema dozvolu.

Razlikuje se od 401 — korisnik JE prijavljen, ali njegov nalog nema dozvolu za ovaj resurs. Provjerite logiku uloga/dozvola.

RFC 9110 ↗
404

Nije pronađeno

Traženi resurs ne postoji.

Ili je URL pogrešan, resurs je izbrisan, ili nikada nije postojao. Serveri ponekad vraćaju 404 kako bi sakrili da bi 403 bio tačniji odgovor.

RFC 9110 ↗
405

Metoda nije dozvoljena

Korištena HTTP metoda nije dozvoljena za ovaj resurs.

Na primjer, GET zahtjev na endpoint koji prihvata samo POST. Odgovor treba sadržavati Allow zaglavlje sa listom važećih metoda.

RFC 9110 ↗
406

Neprihvatljivo

Nijedna reprezentacija ne odgovara Accept zaglavljima klijenta.

Klijent je tražio tip sadržaja, jezik ili enkodiranje (putem Accept, Accept-Language, Accept-Encoding) koje server ne može zadovoljiti. Mnogi serveri preskaču strogo pregovaranje i vraćaju podrazumijevani sadržaj.

RFC 9110 ↗
407

Potrebna autentifikacija proxyja

Klijent se mora prvo autentificirati kod proxyja.

Slično kao 401, ali izdaje ga proxy: klijent mora poslati Proxy-Authorization akreditive. Susreće se na korporativnim mrežama sa proxyjima koji zahtijevaju autentifikaciju.

RFC 9110 ↗
408

Isteklo vrijeme zahtjeva

Serveru je isteklo vrijeme čekanja na zahtjev.

Klijentu je trebalo predugo da pošalje tijelo zahtjeva ili je veza ostala neaktivna. Pokušajte ponovo.

RFC 9110 ↗
409

Konflikt

Zahtjev je u sukobu s trenutnim stanjem resursa.

Obično se vraća za konflikte istovremenog uređivanja ili kreiranje duplikata resursa (npr. kreiranje korisnika sa e-mailom koji već postoji).

RFC 9110 ↗
410

Nestalo

Resurs je izbrisan i neće se vratiti.

Jače od 404 — server izričito zna da je resurs POSTOJAO, ali je trajno uklonjen. Pretraživači će ga ukloniti iz indeksa.

RFC 9110 ↗
411

Potrebna dužina

Server zahtijeva Content-Length zaglavlje.

Zahtjev je odbijen jer nije sadržavao Content-Length zaglavlje, a server odbija tijela nepoznate veličine. Dodajte zaglavlje i pokušajte ponovo.

RFC 9110 ↗
412

Preduslov nije ispunjen

Uslov u zaglavljima zahtjeva nije ispunjen.

Vraća se kada uslovna zaglavlja poput If-Match ili If-Unmodified-Since ne uspiju — obično optimistično zaključavanje: neko drugi je promijenio resurs od vaše verzije. Ponovo preuzmite i pokušajte ponovo.

RFC 9110 ↗
413

Sadržaj prevelik

Tijelo zahtjeva premašuje ograničenje veličine servera.

Uobičajeno kod otpremanja velikih datoteka. Konfiguracija servera (nginx, apache) postavlja maksimalnu veličinu tijela. Provjerite konfiguraciju servera.

RFC 9110 ↗
414

URI predug

URL zahtjeva premašuje ograničenje dužine servera.

Obično uzrokovano vrlo dugim query stringovima (npr. kodiranje podataka u GET zahtjevu). Prebacite se na POST tijelo, ili povećajte ograničenje servera ako ga kontrolišete.

RFC 9110 ↗
415

Nepodržan tip sadržaja

Server ne može obraditi poslani Content-Type.

Na primjer, slanje application/xml serveru koji prihvata samo application/json. Ispravno postavite Content-Type zaglavlje.

RFC 9110 ↗
416

Raspon nije zadovoljiv

Traženi raspon bajtova je izvan veličine resursa.

Range zaglavlje traži dio koji datoteka nema — npr. nastavak preuzimanja iza kraja datoteke. Odgovor treba sadržavati Content-Range sa stvarnom veličinom.

RFC 9110 ↗
417

Očekivanje nije ispunjeno

Server ne može ispuniti zahtjeve Expect zaglavlja.

Šalje se kada server ne podržava Expect: 100-continue. Neki klijenti podrazumijevano šalju ovo zaglavlje kod velikih POST zahtjeva; onemogućavanje obično rješava grešku.

RFC 9110 ↗
418

Ja sam čajnik

Server odbija skuhati kafu jer je čajnik.

Prvoaprilska šala iz 1998. (RFC 2324). Neki pravi API-ji je koriste za šale ili za označavanje zastarjelih endpointa. Nije za produkciju.

RFC 2324 ↗
421

Pogrešno usmjeren zahtjev

Zahtjev je poslan serveru koji za njega ne može proizvesti odgovor.

Uobičajeno kod ponovne upotrebe HTTP/2 veze: zahtjev je stigao na server koji nije konfigurisan za ciljanog hosta. Klijent bi trebao pokušati ponovo na novoj vezi.

RFC 9110 ↗
422

Sadržaj se ne može obraditi

Zahtjev je sintaksno ispravan, ali semantički pogrešan.

Na primjer, JSON je ispravno parsiran, ali nedostaje obavezno polje ili je vrijednost polja van dozvoljenog opsega. Uobičajeno u odgovorima validacije REST API-ja.

RFC 9110 ↗
423

Zaključano

Resurs je zaključan.

WebDAV: izvorni ili odredišni resurs je zaključao drugi klijent, pa operacija ne može nastaviti. Sačekajte da se zaključavanje ukloni ili ga prekinite odgovarajućim tokenom.

RFC 4918 ↗
424

Neuspjela zavisnost

Zahtjev nije uspio jer nije uspio prethodni povezani zahtjev.

WebDAV: u lancu povezanih operacija, ranija radnja nije uspjela, pa ova nije izvršena. Pogledajte raniji neuspjeh za pravi uzrok.

RFC 4918 ↗
425

Prerano

Server odbija obraditi zahtjev koji bi mogao biti ponovljen.

Povezano sa TLS 1.3 0-RTT (rani podaci): server ne želi riskirati obradu potencijalno ponovljenog zahtjeva. Klijent bi trebao pokušati ponovo nakon završetka rukovanja.

RFC 8470 ↗
426

Potrebna nadogradnja

Klijent mora preći na drugi protokol.

Server odbija poslužiti zahtjev preko trenutnog protokola, ali hoće nakon nadogradnje — odgovor sadrži Upgrade zaglavlje sa nazivom potrebnog protokola.

RFC 9110 ↗
428

Preduslov obavezan

Server zahtijeva da zahtjev bude uslovni.

Server zahtijeva uslovna zaglavlja (poput If-Match) kako bi spriječio konflikte izgubljenog ažuriranja. Preuzmite resurs, zabilježite njegov ETag, i pošaljite ponovo sa If-Match.

RFC 6585 ↗
429

Previše zahtjeva

Klijentu je ograničena brzina zahtjeva.

Usporite. Odgovor treba sadržavati Retry-After zaglavlje koje označava kada pokušati ponovo. Uobičajeno kod API-ja sa kvotama zahtjeva.

RFC 6585 ↗
431

Polja zaglavlja zahtjeva prevelika

Zaglavlja su prevelika da bi ih server obradio.

Ili jedno zaglavlje ili ukupna veličina zaglavlja premašuje ograničenje — najčešće uzrokovano preglomaznim kolačićima. Obrišite kolačiće ili smanjite ono što vaša aplikacija u njih sprema.

RFC 6585 ↗
451

Nedostupno iz pravnih razloga

Pristup odbijen zbog pravnih zahtjeva.

Resurs je blokiran iz pravnih razloga — cenzura, sudski nalozi ili regionalni propisi. Broj je referenca na roman Fahrenheit 451.

RFC 7725 ↗
500

Interna greška servera

Server je naišao na neočekivani uslov.

Generička skupna oznaka za greške na strani servera. Provjerite serverske zapisnike za stvarni uzrok: neobrađen izuzetak, greška baze podataka itd.

RFC 9110 ↗
501

Nije implementirano

Server ne podržava traženu funkcionalnost.

Na primjer, server ne prepoznaje HTTP metodu. Rijetko u praksi — češće ćete vidjeti 405.

RFC 9110 ↗
502

Loš gateway

Server, koji djeluje kao gateway, dobio je loš odgovor od uzvodnog servera.

Uobičajeno kod mikroservisnih arhitektura. Vaš balanser opterećenja ili reverzni proxy dobio je neispravan odgovor od pozadinske usluge.

RFC 9110 ↗
503

Usluga nedostupna

Server je privremeno nesposoban obraditi zahtjev.

Ili je nedostupan zbog održavanja ili je preopterećen. Odgovor treba sadržavati Retry-After zaglavlje. Često se vraća tokom implementacija.

RFC 9110 ↗
504

Isteklo vrijeme gatewaya

Gateway serveru je isteklo vrijeme čekanja na uzvodni odgovor.

Pozadinska usluga nije odgovorila dovoljno brzo. Provjerite stanje uzvodne usluge i konfiguracije isteka vremena.

RFC 9110 ↗
505

HTTP verzija nije podržana

Server ne podržava HTTP verziju korištenu u zahtjevu.

Glavna HTTP verzija zahtjeva nije podržana od strane servera. Gotovo se nikada ne viđa kod modernih klijenata.

RFC 9110 ↗
506

Varijanta također pregovara

Server ima pogrešnu konfiguraciju pregovaranja o sadržaju.

Transparentno pregovaranje o sadržaju je završilo u petlji: izabrana varijanta je i sama konfigurisana za pregovaranje. Ukazuje na grešku u konfiguraciji servera.

RFC 2295 ↗
507

Nedovoljno skladišnog prostora

Serveru je ponestalo prostora na disku.

Porijeklom specifično za WebDAV, ali ponekad koriste i opšti serveri. Znači da server ne može sačuvati zahtjev zbog ograničenja skladišta.

RFC 4918 ↗
508

Petlja otkrivena

Server je otkrio beskonačnu petlju prilikom obrade zahtjeva.

WebDAV: obrada Depth: infinity zahtjeva ušla je u petlju (npr. kružna vezivanja). Operacija je prekinuta.

RFC 5842 ↗
510

Nije prošireno

Potrebna su dodatna proširenja zahtjeva.

Iz zastarjelog HTTP Extension Framework-a: serveru je potrebno više informacija prije nego što može ispuniti zahtjev. Praktično se ne koristi na modernom webu.

RFC 2774 ↗
511

Potrebna autentifikacija mreže

Klijent se mora autentificirati da bi dobio pristup mreži.

Koriste ga captive portali (WiFi u hotelima/aerodromima) kako bi označili da se korisnik mora prijaviti na mrežu prije pristupa vanjskim stranicama.

RFC 6585 ↗

Kako radi

Ovaj alat je referenca na strani klijenta izgrađena oko ugrađene tabele pretrage od 63 HTTP status koda koji obuhvataju svih pet klasa (1xx–5xx), svaki označen svojim definišućim RFC brojem. Nema poziva serveru, nema vanjskog API-ja, i nema mrežnog zahtjeva — sve filtriranje i prikaz se dešava u pregledniku koristeći ugrađene JavaScript metode niza i stringa.

  1. 1
    Tabela pretrage se učitava
    Cijeli skup od 63 IANA-registrovana status koda je ugrađen direktno u ovaj alat kao JavaScript niz, gdje svaki unos nosi brojčani kod, kanonski engleski naziv, klasu kategorije, i specifičan RFC koji ga definiše (npr. RFC 9110 za većinu HTTP/1.1 kodova, RFC 6585 za 429 Previše zahtjeva, RFC 2324 za 418 Ja sam čajnik).
  2. 2
    Filter se izvršava u memoriji
    Dok kucate ili birate filter kategorije, Array.filter JavaScripta se izvršava nad listom u memoriji, upoređujući vaš upit sa brojem status koda, kanonskim nazivom, i nizovima kratkog i dugog opisa koristeći String.includes — bez odgode, bez putovanja do servera.
  3. 3
    Detalji se proširuju sa RFC vezom
    Svaki rezultat se iscrtava kao HTML details/summary element. Proširivanje unosa otkriva dugu formu objašnjenja i direktnu vezu ka autoritativnom RFC-u na rfc-editor.org, tako da možete pročitati tačan tekst specifikacije za bilo koji kod.
  4. 4
    Duboke veze i kopiranje u međuspremnik
    Otvaranje unosa ažurira hash URL-a na broj koda (npr. #404), čineći stranicu podijeljivom i pogodnom za čuvanje u zabilješkama. Dugme za kopiranje zapisuje kanonski niz (npr. '404 Not Found') u međuspremnik putem navigator.clipboard API-ja preglednika.

Povezani alati

Često postavljana pitanja