Техничка референца

HTTP кодови статуса одговора

HTTP статусни кодови су трoцифрени сигнали у одговору сервера. Прва цифра означава шири исход, а преостале цифре конкретан услов. Овај водич објашњава регистроване стандардне кодове у практичном контексту, као и запажене вредности специфичне за пружаоце које се могу појавити у евиденцијама.

Како читати овај каталог: Статус сам по себи није потпуна дијагноза. Проверите метод захтева, заглавља одговора, тело, одредиште преусмеравања и сервер или прокси који је генерисао одговор. Непознате вредности обично задржавају значење класе одређене првом цифром, али тачно понашање може зависити од имплементације.

Компатибилност прегледача и обрада одговора

HTTP статусни кодови су део HTTP протокола, а не функција прегледача коју сваки произвођач спроводи као посебан веб API. Актуелни прегледачи могу да обрађују стандардне класе одговора; видљиве странице грешака и понашање при поновном покушају зависе од прегледача. Подршка за новије привремене одговоре и специјализована проширења може се разликовати по верзији и мрежној путањи.

Породица одговораChrome / EdgeFirefoxSafariOperaAndroid / iOS WebViewНапомена о компатибилности
1xx информативниПодржано као привремени одговор протоколаПодржано као привремени одговор протоколаПодржано као привремени одговор протоколаПодржано као привремени одговор протоколаПодржава основни мрежни стек100/101 су устаљени; 102 је нишни/застарео. Усвајање 103 Early Hints и видљиво претходно учитавање варирају по верзији прегледача, серверу и посреднику.
2xx успехПодржаноПодржаноПодржаноПодржаноПодржаноСтандардна семантика успеха је заједничка. Правила тела и даље важе: на пример, 204 и 205 немају тело одговора.
3xx преусмеравањеПодржаноПодржаноПодржаноПодржаноПодржаноLocation, метод, кеш и безбедносна политика утичу на навигацију. 301/302 могу променити POST у GET; 307/308 чувају метод.
4xx грешка клијента/захтеваПодржаноПодржаноПодржаноПодржаноПодржаноПрегледач прима одговор, али приказ тела сервера или странице грешке коју је генерисао прегледач зависи од статуса и производа.
5xx грешка сервераПодржаноПодржаноПодржаноПодржаноПодржаноКлијенти могу обрадити класу одговора, али прокси странице, понашање при поновном покушају и дијагностички интерфејс нису исти у свим прегледачима.
Непознат код у познатој класиОбрада на нивоу класеОбрада на нивоу класеОбрада на нивоу класеОбрада на нивоу класеОбрада на нивоу класеHTTP клијенти могу закључити општу класу из прве цифре; не ослањајте се на то да прилагођени код има стандардну семантику или исти интерфејс.

Компатибилност овде описује обраду на нивоу протокола, а не гаранцију да сваки прегледач приказује исту страницу грешке. Старији клијенти, уграђени WebView, проксији и captive портали могу имати додатно понашање.

1xx — информативни одговори

100

Наставите

Сервер је прихватио заглавља захтева и чека преостало тело захтева. Често се користи са Expect: 100-continue како би клијент избегао слање великог тела ако ће захтев бити одбијен.

Оперативне смернице: Привремени одговор; наставите са слањем тела само ако се оно очекује.

101

Промена протокола

Сервер пристаје да промени протокол за ову везу након захтева клијента за надоградњу. WebSocket руковање је чест пример.

Оперативне смернице: Промена на нивоу везе; проверите Upgrade и Connection заглавља.

102

Обрада

WebDAV сервер пријављује да је започела дуготрајна операција, али да није завршена. Ово је застарео одговор и не треба га мешати са коначним резултатом.

Оперативне смернице: Привремени WebDAV статус; сачекајте коначни одговор.

103

Ране најаве

Док припрема коначни одговор, сервер шаље прелиминарна заглавља, често Link смернице. Клијент може раније започети преузимање вероватно важних ресурса.

Оперативне смернице: Привремена оптимизација; мора уследити коначни одговор.

2xx — успешни одговори

200

У реду

Захтев је успео. Репрезентација зависи од метода: GET враћа ресурс, HEAD враћа метаподатке без тела, а радња уписа може вратити репрезентацију резултата.

Оперативне смернице: Користите за завршен захтев када је репрезентација одговора одговарајућа.

201

Креирано

Захтев је завршен и креирао је један или више ресурса. Одговор треба да наведе нови ресурс, обично помоћу Location заглавља, а може вратити и његову репрезентацију.

Оперативне смернице: Уобичајено након POST или PUT; уверите се да се креирани ресурс може пронаћи.

202

Прихваћено

Сервер је прихватио захтев за обраду, али она није завршена и и даље може да не успе. HTTP касније не шаље други одговор за исту размену.

Оперативне смернице: Наведите URL операције/статуса или други начин да се сазна коначан исход.

203

Неауторитативне информације

Прокси који трансформише или посредник вратио је метаподатке или садржај различит од одговора изворног сервера. То указује да одговор није непосредна ауторитативна репрезентација.

Оперативне смернице: Користите само када је трансформација посредника релевантна.

204

Нема садржаја

Захтев је успео и нема садржаја за слање у одговору. Заглавља и даље могу носити корисне метаподатке, као што су ажурирани валидатори.

Оперативне смернице: Не укључујте тело одговора.

205

Ресетујте садржај

Захтев је успео, а клијенту се налаже да ресетује приказ или формулар који га је послао. Не шаље се садржај одговора.

Оперативне смернице: Корисно за интеракције које треба да обришу/ресетују тренутно унето стање.

206

Делимичан садржај

Сервер је испунио важећи захтев за опсег и враћа само тражени опсег или опсеге бајтова. Content-Range описује испоручене податке.

Оперативне смернице: Проверите да ли се вредности опсега и Content-Range подударају; уобичајено за наставак преузимања медија/датотека.

207

Вишеструки статус

WebDAV одговор приказује одвојене резултате за више ресурса или подоперација, обично у структурираном XML телу.

Оперативне смернице: Протумачите резултат сваког укљученог ресурса; спољни статус сам по себи није цео исход.

208

Већ пријављено

WebDAV multistatus одговор изоставља ставке већ наведене у истом одговору да би избегао понављање.

Оперативне смернице: Специфично за WebDAV; тумачите заједно са околним multistatus одговором.

226

IM коришћен

Сервер је испунио GET користећи манипулације инстанцом и враћа репрезентацију изведену из тренутног ресурса према договореном delta механизму.

Оперативне смернице: Специјализовано delta кодирање; клијенти и сервери морају да се договоре о трансформацији.

3xx — преусмеравање и провера кеша

300

Више избора

Циљ има више репрезентација или одредишта, а одговор нуди избор. Клијент или корисник може одабрати жељену варијанту.

Оперативне смернице: Наведите јасне алтернативе; не претпостављајте да ће сваки клијент аутоматски изабрати.

301

Трајно премештено

Ресурс има нови трајни URI. Клијенти могу ажурирати сачуване линкове и кеш, па користите овај код само када је премештање замишљено као трајно.

Оперативне смернице: За SEO миграције преусмерите директно на коначни еквивалентни URL и ажурирајте интерне линкове.

302

Пронађено

Ресурс је привремено доступан на другом URI-ју. Историјско понашање у неким случајевима дозвољава промену метода, па ово није најбезбеднији избор ако POST мора остати POST.

Оперативне смернице: Користите за привремена премештања када је промена метода прихватљива; у супротном размотрите 307.

303

Погледајте друго

Клијент треба GET методом да преузме ресурс наведен у Location (или HEAD када је прикладно), уместо да понови првобитну радњу. Често се користи после слања формулара.

Оперативне смернице: Спроводи образац Post/Redirect/Get и спречава поновно слање радње.

304

Није измењено

Условни GET или HEAD указује да је кеширана репрезентација и даље актуелна. Одговор нема тело и омогућава клијенту да поново користи сачувану копију.

Оперативне смернице: Вратите само када одговара валидатор као што је If-None-Match или If-Modified-Since.

305

Користите прокси

Историјски одговор је предлагао клијенту да приступи ресурсу преко проксија. Застарео је из безбедносних разлога и савремени сервиси не треба да га користе.

Оперативне смернице: Не примењујте; конфигуришите проксије ван опсега протокола.

306

Не користи се

Ова вредност је резервисана/не користи се у савременим HTTP спецификацијама. Нема стандардно оперативно значење за актуелну веб апликацију.

Оперативне смернице: Не шаљите га.

307

Привремено преусмеравање

Ресурс се привремено налази на другом URI-ју, а клијент мора сачувати првобитни метод и тело захтева при праћењу преусмеравања.

Оперативне смернице: Користите када привремено премештање не сме да претвори POST у GET.

308

Трајно преусмеравање

Ресурс је трајно премештен, а клијент мора сачувати првобитни метод и тело захтева при праћењу преусмеравања.

Оперативне смернице: Користите за трајно премештање када је чување метода важно; ажурирајте canonical и интерне референце.

4xx — грешке клијента/захтева

400

Неисправан захтев

Сервер не може обрадити захтев јер су синтакса, уоквиривање или достављени подаци неисправни. Поновно слање непромењеног захтева вероватно неће помоћи.

Оперативне смернице: Проверите URL кодирање, JSON/синтаксу тела, обавезна поља и уоквиривање захтева.

401

Неауторизовано

Захтеву недостају важећи акредитиви за аутентификацију код циљног сервера. Упркос називу, овај одговор значи да је аутентификација потребна или неуспешна.

Оперативне смернице: Пошаљите очекиване акредитиве и укључите WWW-Authenticate изазов.

402

Плаћање је потребно

Резервисано за будућу употребу, иако неки производи користе код за плаћање или квоте. Не постоји јединствено универзално интероперабилно понашање за плаћање.

Оперативне смернице: Третирајте значења специфична за добављача као таква и документујте API уговор.

403

Забрањено

Сервер је разумео захтев, али одбија да га испуни. Важећи акредитиви не морају променити исход јер ограничење може бити засновано на политици.

Оперативне смернице: Проверите дозволе, политику приступа, IP/WAF правила и ауторизацију на нивоу ресурса.

404

Није пронађено

Сервер не може пронаћи актуелну репрезентацију траженог URI-ја или не жели да открије да ли она постоји. Сам одговор не показује да ли је одсуство привремено или трајно.

Оперативне смернице: Поправите URL, вратите ресурс или користите 410 када је познато да је уклањање трајно.

405

Метод није дозвољен

Ресурс постоји, али не подржава метод коришћен у овом захтеву.

Оперативне смернице: Вратите Allow заглавље са листом метода које ресурс прихвата.

406

Неприхватљиво

Сервер не може да произведе репрезентацију која одговара проактивним Accept преференцама клијента.

Оперативне смернице: Ублажите Accept ограничења или конфигуришите одговарајућу репрезентацију/политику преговарања.

407

Потребна је аутентификација проксија

Посреднички прокси захтева акредитиве пре него што проследи захтев.

Оперативне смернице: Аутентификујте се код проксија помоћу Proxy-Authenticate / Proxy-Authorization; ово није исто што и аутентификација код изворног сервера.

408

Истекло време захтева

Сервер није примио потпун захтев у времену које је био спреман да сачека. Клијент може поновити захтев у новој вези.

Оперативне смернице: Проверите застој мреже, величину отпремања и подешавања истека времена сервера/проксија.

409

Сукоб

Захтев је у сукобу са тренутним стањем ресурса, на пример због колизије верзија или покушаја прављења дупликата.

Оперативне смернице: Објасните сукоб и пружите довољно података о тренутном стању да би клијент могао да га реши.

410

Уклоњено

Ресурс је намерно и вероватно трајно недоступан, без познате замене. Ово је снажније од општег одговора да ресурс није пронађен.

Оперативне смернице: Користите када је уклањање намерно; уклоните застареле интерне линкове и референце.

411

Потребна је дужина

Сервер захтева Content-Length заглавље, али га захтев није доставио.

Оперативне смернице: Пошаљите тачну Content-Length вредност или користите подржано уоквиривање преноса.

412

Предуслов није испуњен

Услов захтева као што је If-Match оцењен је као нетачан, па сервер није извршио тражену радњу.

Оперативне смернице: Освежите репрезентацију и покушајте поново са актуелним валидаторима/стањем.

413

Садржај је превелик

Тело захтева премашује ограничење које сервер може или жели да обради. Сервер може затворити везу или дозволити поновни покушај након смањивања тела.

Оперативне смернице: Смањите величину садржаја или прилагодите документована ограничења отпремања.

414

URI је предугачак

Циљ захтева је дужи него што је сервер спреман да протумачи, често због превеликог низа упита.

Оперативне смернице: Користите краћи URI или преместите одговарајуће податке у тело захтева.

415

Тип медија није подржан

Сервер одбија тело захтева јер његов тип медија, кодирање садржаја или проверени формат није подржан.

Оперативне смернице: Пошаљите подржане Content-Type/кодирање и тело које им одговара.

416

Опсег није могуће испунити

Тражени опсег бајтова не може бити испоручен, на пример када почиње иза дужине репрезентације.

Оперативне смернице: Поново проверите дужину ресурса и јединице опсега; сервери могу вратити Content-Range: bytes */length.

417

Очекивање није испуњено

Сервер или посредник не може да испуни очекивање наведено у Expect заглављу.

Оперативне смернице: Поновите захтев без неподржаног очекивања када је то безбедно и прикладно.

418

Ја сам чајник

Шаљив статус настао у спецификацији за Први април. Није уобичајен уговор о грешци апликације, мада га неки сервиси користе у шали.

Оперативне смернице: Не ослањајте се на њега за интероперабилно понашање у продукцији.

421

Погрешно усмерен захтев

Захтев је стигао до сервера који не може да пружи ауторитативан одговор за циљни URI, често јер се рутирање везе или HTTP authority не подударају.

Оперативне смернице: Поновите захтев преко одговарајуће везе и проверите Host/:authority, SNI и прокси рутирање.

422

Садржај није могуће обрадити

Тип и синтакса садржаја су разумљиви, али сервер не може применити инструкције или проверити достављени садржај.

Оперативне смернице: Вратите употребљиве детаље провере по пољима; исправка садржаја може омогућити успех.

423

Закључано

WebDAV ресурс је закључан, па тражени метод не може да се изврши док се услов закључавања не разреши.

Оперативне смернице: Проверите власника браве, истек времена и обраду WebDAV токена за закључавање.

424

Зависност није испуњена

WebDAV операција није успела јер је потребна претходна операција у истом низу захтева неуспешно завршена.

Оперативне смернице: Решите претходну неуспелу радњу пре поновног покушаја зависних операција.

425

Прерано

Сервер одбија обраду захтева који је можда поновљен током раних података, како би смањио ризик од поновног слања.

Оперативне смернице: Покушајте поново пошто се веза успостави, без раних података.

426

Потребна је надоградња

Сервер одбија тренутни протокол и указује да клијент треба да пређе на други.

Оперативне смернице: Укључите Upgrade заглавље које описује подржане изборе протокола.

428

Потребан је предуслов

Сервер захтева условни захтев да спречи изгубљене измене, али је клијент послао безусловни.

Оперативне смернице: Преузмите тренутно стање и пошаљите одговарајући услов као што је If-Match.

429

Превише захтева

Клијент је послао превише захтева у датом периоду, према ограничењу које је одредио сервер.

Оперативне смернице: Успорите, поштујте Retry-After када је присутан и избегавајте синхронизоване таласе поновних покушаја.

431

Поља заглавља захтева су превелика

Сервер неће обрадити захтев јер су једно или више поља заглавља или цео скуп заглавља превелики.

Оперативне смернице: Смањите колачиће/прилагођена заглавља или прилагодите намерно ограничење сервера.

451

Недоступно из правних разлога

Сервер не може да пружи тражени ресурс због законског ограничења.

Оперативне смернице: Када је прикладно, објасните ограничење и његов обим без откривања заштићених информација.

5xx — грешке сервера и посредника

500

Интерна грешка сервера

Сервер је наишао на неочекиван услов и не може да заврши захтев. Ово је општа резервна грешка када се не примењује прецизнија грешка сервера.

Оперативне смернице: Повежите захтев са евиденцијама сервера и немојте излагати посетиоцима трагове стека.

501

Није имплементирано

Сервер не подржава функцију потребну за испуњавање захтева, најчешће неимплементирани метод или могућност.

Оперативне смернице: Имплементирајте функцију или користите подржан метод; код није намењен за привремено преоптерећење.

502

Лош мрежни пролаз

Сервер који ради као мрежни пролаз или прокси примио је неисправан одговор од upstream сервера.

Оперативне смернице: Проверите здравље upstream сервиса, протокол/TLS подешавања, DNS и прокси евиденције.

503

Услуга није доступна

Сервер привремено не може да обради захтев, често због одржавања или преоптерећења.

Оперативне смернице: Ако је могуће, обезбедите Retry-After, користан одговор и правила кеширања погодна за привремени отказ.

504

Истек времена мрежног пролаза

Мрежни пролаз или прокси није добио благовремен одговор од upstream услуге.

Оперативне смернице: Истражите upstream кашњење, мрежне путање и буџете истека времена кроз цео ланац.

505

HTTP верзија није подржана

Сервер не подржава главну HTTP верзију коришћену у захтеву.

Оперативне смернице: Користите подржану верзију протокола или ажурирајте конфигурацију сервера/проксија.

506

Варијанта поново преговара

Грешка конфигурације сервера направила је кружно преговарање садржаја у ком изабрана варијанта поново покреће преговарање.

Оперативне смернице: Поправите конфигурацију варијанте и преговарања; грешка је на изворном серверу.

507

Недовољно простора за складиштење

WebDAV сервер не може да сачува представу потребну за довршетак операције.

Оперативне смернице: Ослободите или обезбедите простор и проверите квоте пре поновног покушаја.

508

Откривена петља

Сервер је открио бесконачну петљу током обраде захтева, најчешће при обиласку WebDAV веза.

Оперативне смернице: Прекините цикличну везу између ресурса или правило обраде које ствара петљу.

510

Неподржано проширење

Захтев захтева проширење које сервер не подржава.

Оперативне смернице: Користите подржани скуп проширења или договорите алтернативу.

511

Потребна је мрежна аутентификација

Клијент мора да се аутентификује да би добио приступ мрежи, обично преко портала за пријаву на јавну мрежу. Ово је намењено мрежним посредницима, а не пријави на изворни веб-сајт.

Оперативне смернице: Довршите аутентификацију за приступ мрежи, а затим поновите првобитни захтев.

Значајни нестандардни одговори и одговори специфични за добављача

Ове вредности се појављују у одређеним производима, евиденцијама сервера, CDN-овима или апликацијама. Не треба их изједначавати са регистрованим стандардним значењима; проверите услове услуге која их генерише.

419

Истек аутентификације (нестандардно)

Неке апликације користе овај назив када истекне сесија аутентификације. То није универзално додељен HTTP статус, па клијенти не могу да очекују доследно значење.

Оперативне смернице: Обновите аутентификацију у складу са условима услуге.

420

Смирите се (нестандардно)

Одговор специфичан за добављача који се историјски користио за ограничавање захтева. Значење одређује конкретна имплементација.

Оперативне смернице: Пратите документована упутства за ограничење броја захтева.

444

Веза је затворена (нестандардно)

Неки сервери затварају везу без слања уобичајеног одговора, често као меру филтрирања.

Оперативне смернице: Проверите евиденције добављача; клијент може приказати мрежну грешку уместо овог кода.

449

Понови са (нестандардно)

Microsoft проширење које неке услуге користе да затраже од клијента да понови захтев са додатним информацијама.

Оперативне смернице: Пратите документацију конкретног API-ја.

499

Захтев је прекинуо клијент (нестандардно)

Обрнути прокси може да забележи овај статус ако се клијент искључи пре него што се доврши одговор узводног сервера. То је обично класификација у евиденцији, а не одговор послат клијенту.

Оперативне смернице: Истражите отказивања клијента и споре захтеве узводном серверу.

509

Прекорачен је пропусни опсег (нестандардно)

Неке хостинг платформе користе овај код за означавање квоте или ограничења пропусног опсега. Он нема опште, интероперабилно значење у HTTP-у.

Оперативне смернице: Проверите квоту хостинга и подешавања обрачуна.

520

Веб сервер је вратио непознату грешку (специфично за добављача)

CDN или прокси може да користи овај статус када добије неочекиван или празан одговор изворног сервера.

Оперативне смернице: Упоредите евиденције посредничког и изворног сервера; проверите да изворни сервер шаље важећи HTTP одговор.

521

Веб сервер није доступан (специфично за добављача)

Прокси није успео да успостави везу са изворним сервером или је изворни сервер одбио везу.

Оперативне смернице: Проверите доступност изворног сервера, правила заштитног зида и листе дозвољених адреса на проксију.

522

Истекло је време везе (специфично за добављача)

Посреднички сервер је успоставио или покушао да успостави везу са изворним сервером, али размена није завршена у предвиђеном року.

Оперативне смернице: Проверите одзив изворног сервера и кашњење мреже.

523

Изворни сервер није доступан (специфично за добављача)

Прокси није могао да приступи конфигурисаној адреси изворног сервера.

Оперативне смернице: Проверите DNS разрешавање, рутирање и IP конфигурацију изворног сервера.

524

Дошло је до истека времена (специфично за добављача)

Веза са изворним сервером је успостављена, али сервер није послао HTTP одговор на време.

Оперативне смернице: Смањите време обраде на изворном серверу или прилагодите подржана подешавања временског ограничења.

525

TLS руковање није успело (специфично за добављача)

Прокси није могао да доврши TLS преговарање са изворним сервером.

Оперативне смернице: Проверите сертификате, компатибилност протокола и шифара и SNI.

526

Неважећи SSL сертификат (специфично за добављача)

Посредник је одбио сертификат изворног сервера током провере.

Оперативне смернице: Инсталирајте важећи, исправно именован и поуздан сертификат који није истекао, заједно са комплетним ланцем сертификата.

527

Railgun грешка (специфично за добављача)

Застарели статус проксија специфичан за добављача који означава грешку у вези за убрзавање изворног сервера.

Оперативне смернице: Проверите конектор специфичан за добављача и путању до изворног сервера.

598

Истекло је време за читање са мреже (нестандардно)

Неки клијенти или проксији користе ову вредност за опис истека времена приликом читања са мреже. Она нема универзално HTTP значење.

Оперативне смернице: Проверите дијагностику клијента или проксија.

599

Истекло је време за повезивање на мрежу (нестандардно)

Неки проксији користе ову вредност када истекне време покушаја успостављања мрежне везе. Значење зависи од имплементације.

Оперативне смернице: Проверите доступност и подешавања временског ограничења.

Коришћење статусних кодова у провери преусмеравања и SEO-а

За трајну промену URL адресе користите трајно преусмеравање само када је предвиђено да нова адреса замени стару; за привремену промену изаберите привремени одговор. Скратите ланац преусмеравања и усмерите га на коначно одредиште са истим значењем. Проверите да ли је свака вредност Location доступна, да ли је коначни одговор одговарајући и да ли су canonical ознаке и интерне везе усклађене са жељеном URL адресом. Коначни одговор 2xx потврђује HTTP успех, али не гарантује да је страница корисна, доступна за индексирање или технички исправна.

Извори и напомене о референцама

Ова страница сажима значења HTTP статусних кодова ради практичне употребе. Регистар стандарда и RFC су меродавни извори за стандардизоване кодове; MDN пружа приступачан технички водич, а Википедија је допунски преглед који уређује заједница.