База ведаў Простая інструкцыя па працы з сэрвісам Профітсервер
галоўны База ведаў Коды памылак HTTP: поўны спіс памылак сервера

Коды памылак HTTP: поўны спіс памылак сервера


У свеце вэб-распрацоўкі коды памылак HTTP адыгрываюць важную ролю, уплываючы на ​​карыстацкі досвед і рэпутацыю вэб-сайта. У гэтым артыкуле мы разгледзім поўны спіс кодаў памылак сервера, прааналізуем іх значэнне і даведаемся, як эфектыўна інтэрпрэтаваць коды адказаў сервера, каб вырашаць праблемы і аптымізаваць прадукцыйнасць вэб-прыкладанняў.

Што такое код адказу HTTP

Код адказу HTTP - гэта мова вэб-сервераў, якая перакладае запыты браўзера ў зразумелыя інструкцыі. Гэта як паэт, які адказвае на віртуальныя пытанні, надаючы ім сэнс і кірунак. Коды адказаў не заўсёды з'яўляюцца кодамі памылак HTTP. Напрыклад, «200 OK» азначае, што ўсё ў парадку, але памылка HTTP «404 Not Found» азначае, што старонка згублена ў віртуальнай прасторы. Кожны код з'яўляецца унікальным выразам стану сервера, расшыфроўка якога дазваляе зразумець, што адбываецца па той бок віртуальнага свету.

Коды 1xx (Інфармацыя)

Коды стану 1xx у пратаколе HTTP з'яўляюцца свайго роду першым звяном у дыялогу паміж серверам і кліентам. Замест поўнага адказу на запыт яны даюць інфармацыю аб бягучым стане, што робіць абмен дадзенымі больш эфектыўным. Давайце разгледзім іх больш падрабязна:

100 Працягнуць. Код адказу HTTP, у якім сервер дае зялёнае святло карыстальніку, што дазваляе яму бяспечна працягваць адпраўку вялікага запыту.

101 Пратаколы камутацыі. Сервер паведамляе кліенту, што ён мяняе правілы гульні, напрыклад, пераходзіць з HTTP на больш бяспечны HTTPS. У гэтым выпадку загаловак «Upgrade» выкарыстоўваецца для змены пратаколу.

102 Апрацоўка. Гэты код падобны на паведамленне аб тым, што сервер прыняў запыт, але ўсё яшчэ заняты складанай аперацыяй.

103 Early Hints. Тут сервер адпраўляе кліенту некалькі паказальных загалоўкаў перад асноўным адказам, папярэджваючы аб тым, што можа быць актуальным у бліжэйшы час.

Код 2xx (паспяхова)

Коды памылак HTTP ў групе 2xx паказваюць паспяховы запыт з сервера. Па сутнасці, яны дзейнічаюць як «зялёнае святло» ў сферы вэб-камунікацый, пацвярджаючы, што ўсё ідзе па плане і паспяхова завершана.

200 OK. Гэты статус выкарыстоўваецца, калі сервер без праблем апрацоўвае запыт метадам GET і вяртае запытаныя дадзеныя ў адказ. Загаловак "Content-Type" паведамляе тып кантэнту ў адказе. Ён проста паведамляе кліенту, што запыт быў паспяховым.

201 Створана. Тут сервер паведамляе аб стварэнні новага рэсурсу.

202 Прынята. Сервер паведамляе карыстальніку, што запыт прыняты, але для адказу спатрэбіцца час.

203 Неаўтарытэтная інфармацыя. Гэты код дае кліенту дадзеныя, якія могуць быць неафіцыйнымі, але іх можна выкарыстоўваць для параўнання.

204 Няма зместу. Сервер апрацаваў запыт, але не вяртае дадатковы кантэнт.

205 Скінуць змесціва. Тут кліенту даручана скінуць бягучы выгляд або даныя пасля адпраўкі.

206 Частковы змест. Гэты выпадак паказвае, што адказ утрымлівае толькі частку запытанага кантэнту. Загаловак "Content-Range" паказвае частковы дыяпазон змесціва.

207 Мультыстатус. Сервер паспяхова выканаў шматаперацыйны запыт ад кліента, і адказ змяшчае інфармацыю аб статусе кожнай з аперацый.

226 І. М. Выкарыстоўв. Гэты код паказвае, што сервер выкарыстаў метад дадатковых метададзеных (IM) і ў адказ перадаў кліенту толькі змененыя часткі рэсурсаў.

3xx коды (перанакіраванні)

Коды 3xx у пратаколе HTTP падобныя на паказальнікі, якія накіроўваюць карыстальніка да новага месцазнаходжання рэсурсу. Яны паведамляюць кліенту, што для атрымання запытанага кантэнту або перанакіравання на іншы рэсурс неабходна выканаць наступныя дзеянні. Давайце паглыбімся ў падрабязнасці кожнага з іх:

300 варыянтаў. Кліент атрымлівае сігнал, што ёсць некалькі магчымых месцаў размяшчэння рэсурсу, і ў адказ атрымлівае выбар. У цяперашніх умовах загаловак «Месцазнаходжанне» можа пазначаць альтэрнатыўныя варыянты рэсурсу.

301 Пераехаў назаўсёды. Сервер паведамляе карыстальніку, што рэсурс быў канчаткова перамешчаны ў іншае месца.

302 Знойдзена. Гэты код HTTP падобны да часовага перанакіравання. Сервер інфармуе спажыўца аб тым, што рэсурс часова даступны па іншым URL. Загаловак "Месцазнаходжанне" паказвае на новы URL для часовага перанакіравання.

303 See Other. Кліенту паведамляецца, што рэсурс даступны па іншым URL-адрасе, і яму трэба зрабіць запыт GET на гэты новы адрас.

304 Не зменена. Гэты статус паведамляе кліенту, што рэсурс не змяніўся з моманту апошняга запыту і не патрабуе паўторнай загрузкі. Пры выкананні запыту загаловак «If-Modified-Since» выкарыстоўваецца для праверкі, ці быў рэсурс зменены.

305 Выкарыстоўвайце проксі. У адказ сервер паведамляе, што для доступу да запытанага рэсурсу ён павінен выкарыстоўваць указаны проксі.

306 (зарэзерваваны) — Код зарэзерваваны, але фактычна не выкарыстоўваецца.

307 Часовае перанакіраванне. Гэты код падобны да 302 Found, але патрабуе, каб кліент заставаўся ў метадзе запыту, які выкарыстоўваўся ў зыходным запыце.

308 Пастаяннае перанакіраванне. Паказвае, што рэсурс зрабіў пастаянны пераход на новы URI і кліент павінен выкарыстоўваць новы URI для ўсіх будучых запытаў.

Памылка HTTP 4xx (памылкі кліента)

Коды памылак HTTP 4xx паказваюць на памылкі кліента. Гэта азначае, што праблема на баку карыстальніка, напрыклад, у вэб-браўзеры або дадатку.

400 Дрэнны запыт. Сервер не можа апрацаваць запыт з-за сінтаксічных памылак, несапраўдных даных або іншых памылак на баку кліента.

401 Несанкцыянаваны. Сервер не можа апрацаваць запыт з-за сінтаксічных памылак, несапраўдных даных або іншых памылак на баку кліента.

402 Патрабуецца аплата. Код на дадзены момант неактыўны і зарэзерваваны для выкарыстання ў будучыні. Гэта можа сведчыць аб неабходнасці аплаты перад доступам да рэсурсу ў будучыні.

Памылка HTTP 403 забаронена. Кліент не мае дастатковых правоў для доступу да запытанага рэсурсу.

404 Не знойдзены. Запытаны рэсурс не існуе на серверы. Гэта адна з самых распаўсюджаных памылак карыстальнікаў.

Метад 405 недапушчальны. Сервер не падтрымлівае ўказаны метад запыту падчас гэтага рэсурсу. Загаловак «Дазволіць» паказвае дазволеныя метады для рэсурсу. З дапамогай гэтага кода,

406 Непрымальна. Сервер не можа прадаставіць даныя ў фармаце, які можа быць прыняты кліентам.

407 Патрабуецца аўтэнтыфікацыя проксі. Для доступу да запытанага рэсурсу патрабуецца аўтэнтыфікацыя на проксі-серверы.

408 Час чакання запыту. Сервер чакаў атрымання запыту ад кліента, але час чакання скончыўся. Загаловак "Паўтарыць-пасля" можа паказваць час, праз які запыт можа быць паўтораны.

409 Канфлікт. Запыт не можа быць выкананы з-за канфлікту з бягучым станам рэсурсу.

410 Пайшоў. Запытаны рэсурс існаваў раней, але зараз быў выдалены, і яго аднаўленне не чакаецца.

411 Неабходная даўжыня. Сервер патрабуе ўказаць у запыце даўжыню кантэнту; адсутнасць гэтай інфармацыі лічыцца памылкай.

412 Перадумова не выканана. Перадумова ў запыце не выканана, што перашкаджае яго выкананню.

413 Карысная нагрузка занадта вялікая. Памер дадзеных запыту перавышае ліміты сервера.

414 URI занадта доўгі. Даўжыня URI у запыце перавышае дапушчальныя межы.

415 Тып носьбіта не падтрымліваецца. Сервер не можа апрацаваць тып даных, прадстаўлены ў запыце.

416 Дыяпазон не задавальняе. Памылка HTTP, калі запытаны дыяпазон не адпавядае бягучым даным сервера.

417 Чаканне не выканана. Чаканая ўмова ў загалоўку "Чакаць" не была выканана.

418 Я чайнік. Гэты код уключаны як жарт і не прадугледжвае ніякіх рэальных дзеянняў для карыстальніка або сервера і не з'яўляецца паўнавартаснай памылкай. Гэта азначае, што сервер з'яўляецца чайнікам і не здольны прыгатаваць каву.

421 Няправільны запыт. Сервер не апрацоўвае запыт з-за памылкі ў запыце або канфігурацыі сервера.

422 Сутнасць, якая не падлягае апрацоўцы. Сервер разумее запыт, але не апрацоўвае яго з-за памылак дадзеных.

423 Заблакіравана. Рэсурс заблакаваны і не можа быць апрацаваны.

424 Няўдалая залежнасць. Запыт залежыць ад іншага нявыкананага запыту.

425 Занадта рана. Сервер не гатовы да апрацоўкі запыту з-за яго ранняга паступлення.

426 Патрабуецца абнаўленне. Сервер патрабуе выкарыстання больш прасунутага пратаколу для апрацоўкі запыту.

428 Патрабуецца перадумова. Сервер патрабуе, каб у запыце былі ўказаны пэўныя перадумовы.

429 Занадта шмат запытаў. Кліент адправіў занадта шмат запытаў за кароткі час, што перавышае ліміты сервера.

431 Палі загалоўка запыту занадта вялікія. Загалоўкі запытаў перавышаюць максімальна дазволены памер.

449 Паўтарыць з. Паказвае, што запыт не можа быць выкананы бягучым серверам, але можа быць паспяхова апрацаваны іншым серверам, і кліент павінен паўтарыць запыт з новым URI.

451 Недаступны па юрыдычных прычынах. Рэсурс недаступны па юрыдычных прычынах.

499 Кліент Закрыты запыт. Сервер атрымаў запыт, але злучэнне было закрыта кліентам да завяршэння апрацоўкі.

Памылка HTTP 5xx (памылкі сервера)

Коды памылак HTTP 5xx паказваюць на праблемы сервера. Гэтыя коды паказваюць на праблемы, якія ўзніклі на баку сервера, у выніку чаго сервер не можа правільна апрацаваць запыт карыстальніка. Давайце разгледзім іх больш падрабязна:

Памылка HTTP 500 Унутраная памылка сервера. Сервер сутыкаецца з нечаканымі абставінамі, якія перашкаджаюць выкананню запыту. Загаловак «Сервер» можа пазначаць сервер, на якім адбылася памылка.

501 Не рэалізаваны. Сервер не падтрымлівае функцыі, неабходныя для апрацоўкі запыту кліента. Загаловак «Via» можа пазначаць проксі-сервер, праз які адбылася памылка.

502 Bad Gateway. Гэты код азначае, што сервер, які дзейнічае як проксі, атрымаў няправільны адказ ад іншага сервера.

HTTP памылка 503 Service Unavailable. Сервер часова не можа апрацоўваць запыты.

504 шлюз скончыўся. Сервер, які выконвае ролю проксі, не атрымаў своечасовага адказу ад іншага сервера.

Версія 505 HTTP не падтрымліваецца. Сервер не падтрымлівае версію пратаколу HTTP, указаную ў запыце. У якасці рэзервовага варыянту ў загалоўку «Абнаўленне» могуць быць указаны падтрымоўваныя пратаколы.

Варыянт 506 таксама вядзе перамовы. Гэты статус не выкарыстоўваецца ў HTTP/1.1; аднак, калі сервер выяўляе ўнутраную канфігурацыю, якая прыводзіць да неадназначнасці ўзгаднення кантэнту, ён можа выкарыстоўваць гэты адказ.

507 Недастаткова памяці. Сервер не можа выканаць запыт з-за недастатковага месца для захоўвання на серверы.

508 Выяўлены цыкл. Сервер выявіў цыкл падчас апрацоўкі запыту і адмаўляецца выконваць запыт, каб пазбегнуць бясконцага цыклу.

509 Ліміт прапускной здольнасці перавышаны. Памылка ўзнікае, калі прапускная здольнасць сервера перавышана з-за вялікага аб'ёму запытаў або трафіку.

510 Не пашырана. Каб працягнуць запыт, кліент павінен перадаць дадатковыя пашырэнні.

511 Патрабуецца сеткавая аўтэнтыфікацыя. Кліент павінен прайсці аўтэнтыфікацыю, каб атрымаць доступ да сеткі.

Як праверыць код стану старонкі

У гэтым раздзеле мы разгледзім тры асноўныя спосабы праверкі кода стану старонкі: з дапамогай каманднага радка, з дапамогай вэб-браўзера і з дапамогай незалежных інтэрнэт-сэрвісаў. Кожны з гэтых метадаў мае свае перавагі і можа быць карысны ў розных сітуацыях.

Праверка адказу сервера праз камандны радок

Камандны радок забяспечвае зручны спосаб праверыць код стану старонкі без выкарыстання вэб-браўзера. Для гэтага метаду вам трэба адкрыць камандны радок і выкарыстоўваць каманду:

curl -I http://page-address

Гэтая каманда адпраўляе запыт HEAD (запыт толькі загалоўкаў) на паказаны URL і адлюстроўвае інфармацыю, уключаючы код стану HTTP:

Праверка кода адказу HTTP сервера Curl

Прыклад вышэй паказвае паспяховы код адказу. У выпадку адказу, які змяшчае код памылкі, напрыклад, памылка HTTP 404 Not Found, вынік будзе выглядаць падобным чынам:

Код памылкі HTTP Error 404 Not Found

Праверка адказу сервера праз кансоль браўзера

Кансоль распрацоўшчыка вэб-браўзера змяшчае інструменты для правядзення розных аперацый, у тым ліку для праверкі кода стану старонкі. Каб убачыць HTTP-код у адказе сервера, неабходна адкрыць кансоль распрацоўшчыка (Ctrl+Shift+K) або (Ctrl+shift+J) у залежнасці ад выкарыстоўванага браўзера. Далей абярыце раздзел «сетка» і загрузіце патрэбную старонку:

Дыягностыка кода адказу HTTP сервера браўзера

Праверка адказу сервера з дапамогай незалежных інструментаў

Існуе вялікая колькасць незалежных інтэрнэт-сэрвісаў, якія прадастаўляюць інструменты для праверкі кода стану старонкі вэб-сайта. Гэтыя паслугі звычайна дазваляюць хутка атрымаць агляд даступнасці і прадукцыйнасці вашага рэсурсу. Усе яны працуюць па адным прынцыпе. У якасці прыкладу мы разгледзім самы папулярны рэсурс - httpstatus.io

Перш за ўсё неабходна адкрыць сам сэрвіс, затым увесці адрас старонкі, адказ на якую трэба даведацца, і запытаць праверку:

Код адказу сервера HTTP для незалежных службаў

Вынік будзе паказаны ўнізе старонкі:

Паспяховы код адказу сервера HTTP

Conclusion

У заключэнне варта падкрэсліць, што разуменне і ўменне чытаць коды памылак HTTP з'яўляецца ключавым навыкам для ўсіх, хто займаецца вэб-распрацоўкай і абслугоўваннем сервераў. Калі мы высвятляем кожную памылку і вывучаем інструменты для іх выяўлення, мы бачым прычыны, чаму так важна эфектыўна кіраваць гэтымі аспектамі вэб-сэрвісаў.

❮ Папярэдні артыкул Як дадаць дадатковы IP-адрас да сервера Windows
Наступны артыкул ❯ Як праверыць паштовы сервер

Спытайце нас пра VPS

Мы заўсёды гатовы адказаць на вашы пытанні ў любы час дня і ночы.