Технічний довідник

Коди стану відповіді HTTP

Коди стану HTTP — це тризначні сигнали у відповіді сервера. Перша цифра позначає загальний результат, а дві наступні — конкретну умову. У цьому посібнику наведено зареєстровані стандартні коди з практичними поясненнями, а також відомі специфічні для постачальників значення, які можуть траплятися в журналах.

Як читати цей каталог: Код стану сам по собі не дає повного діагнозу. Перевірте метод запиту, заголовки й тіло відповіді, ціль перенаправлення, а також сервер або проксі, який сформував відповідь. Нерозпізнані значення зазвичай зберігають значення свого класу за першою цифрою, але точна поведінка може залежати від реалізації.

Сумісність із браузерами та обробка відповідей

Коди стану HTTP є частиною протоколу HTTP, а не функцією браузера, яку кожен постачальник реалізує як окремий вебінтерфейс. Сучасні браузери обробляють стандартні класи відповідей; вигляд сторінок помилок і поведінка повторних спроб залежать від браузера. Підтримка нових проміжних відповідей і спеціалізованих розширень може відрізнятися залежно від версії та мережевого маршруту.

Клас відповіді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, проксі та портали авторизації можуть мати додаткові обмеження.

1xx — інформаційні відповіді

100

Continue (Продовжуйте)

Сервер прийняв заголовки запиту й очікує на решту тіла запиту. Код часто використовують із заголовком Expect: 100-continue, щоб клієнт міг не завантажувати великий обсяг даних, якщо запит буде відхилено.

Практичні рекомендації: Проміжна відповідь; продовжуйте надсилати тіло лише тоді, коли воно очікується.

101

Switching Protocols (Перемикання протоколів)

Сервер погоджується змінити протокол цього з’єднання після запиту клієнта на оновлення. Типовий приклад — узгодження WebSocket.

Практичні рекомендації: Перехід на рівні з’єднання; перевірте заголовки Upgrade та Connection.

102

Processing (Обробка)

Сервер WebDAV повідомляє, що тривала операція розпочалася, але ще не завершилася. Це застаріла відповідь, яку не слід плутати з кінцевим результатом.

Практичні рекомендації: Проміжний статус WebDAV; дочекайтеся кінцевої відповіді.

103

Early Hints (Попередні підказки)

Під час підготовки кінцевої відповіді сервер надсилає попередні заголовки, часто підказки Link. Клієнт може заздалегідь почати завантаження ймовірно важливих ресурсів.

Практичні рекомендації: Проміжна оптимізація; після неї має надійти кінцева відповідь.

2xx — успішні відповіді

200

OK (Успішно)

Запит виконано успішно. Представлення залежить від методу: GET повертає ресурс, HEAD — метадані без тіла, а операція запису може повернути представлення результату.

Практичні рекомендації: Використовуйте для завершеного запиту з представленням відповіді, якщо воно доречне.

201

Created (Створено)

Запит завершився та створив один або кілька ресурсів. У відповіді слід указати новий ресурс, зазвичай за допомогою Location, і за потреби повернути його представлення.

Практичні рекомендації: Типовий результат POST або PUT; переконайтеся, що створений ресурс можна знайти.

202

Accepted (Прийнято)

Сервер прийняв запит на обробку, але вона ще не завершилася й може завершитися невдало. HTTP не надсилає пізніше другу відповідь для того самого обміну.

Практичні рекомендації: Надайте URL-адресу операції або її стану чи інший спосіб дізнатися кінцевий результат.

203

Non-Authoritative Information (Неавторитетна інформація)

Проксі або проміжний вузол, що змінює дані, повернув метадані чи вміст, відмінні від відповіді джерела. Це означає, що відповідь не є безпосереднім авторитетним представленням ресурсу.

Практичні рекомендації: Використовуйте лише тоді, коли важливо позначити зміну відповіді проміжним вузлом.

204

No Content (Немає вмісту)

Запит виконано успішно, і вміст відповіді відсутній. Заголовки все одно можуть містити корисні метадані, наприклад оновлені валідатори.

Практичні рекомендації: Не додавайте тіло відповіді.

205

Reset Content (Скидання вмісту)

Запит виконано успішно; клієнту пропонується скинути подання або форму, з якої його надіслано. Тіло відповіді не передається.

Практичні рекомендації: Корисно для дій, після яких слід очистити або скинути поточні поля введення.

206

Partial Content (Частковий вміст)

Сервер виконав коректний запит діапазону й повертає лише запитані діапазони байтів. Заголовок Content-Range описує передані дані.

Практичні рекомендації: Переконайтеся, що значення Range і Content-Range узгоджені; цей код часто використовують для відновлення завантаження медіа й файлів.

207

Multi-Status (Багатостатусна відповідь)

Відповідь WebDAV повідомляє окремі результати для кількох ресурсів або підоперацій, зазвичай у структурованому тілі XML.

Практичні рекомендації: Інтерпретуйте результат для кожного вкладеного ресурсу: зовнішній код стану не описує результат повністю.

208

Already Reported (Уже повідомлено)

Багатостатусна відповідь WebDAV не містить елементів, які вже наведено в цій самій відповіді, щоб уникнути повторення.

Практичні рекомендації: Специфічний для WebDAV код; розглядайте його в контексті решти багатостатусної відповіді.

226

IM Used (Використано маніпуляції екземпляра)

Сервер виконав GET із застосуванням маніпуляцій екземпляра й повернув представлення, сформоване на основі поточного ресурсу відповідно до узгодженого механізму різницевого кодування.

Практичні рекомендації: Спеціалізоване різницеве кодування; клієнт і сервер мають узгодити перетворення.

3xx — перенаправлення та перевірка кешу

300

Multiple Choices (Кілька варіантів)

Для цільового ресурсу існує кілька представлень або місць розташування, і відповідь пропонує вибір. Клієнт або користувач може вибрати потрібний варіант.

Практичні рекомендації: Надайте зрозумілі альтернативи; не припускайте, що кожен клієнт автоматично зробить вибір.

301

Moved Permanently (Переміщено назавжди)

Ресурс має постійно новий URI. Клієнти можуть оновити збережені посилання й кеш, тому використовуйте цей код лише для перенесення, яке має залишатися постійним.

Практичні рекомендації: Під час SEO-перенесення перенаправляйте безпосередньо на кінцеву еквівалентну URL-адресу й оновіть внутрішні посилання.

302

Found (Знайдено)

Ресурс тимчасово доступний за іншим URI. Історична поведінка допускає зміну методу в деяких випадках, тому цей код не найкращий вибір, якщо POST має залишатися POST.

Практичні рекомендації: Використовуйте для тимчасового переміщення, коли зміна методу прийнятна; якщо ні, розгляньте код 307.

303

See Other (Див. інший ресурс)

Клієнт має отримати ресурс, зазначений у Location, методом GET (або HEAD, якщо доречно), а не повторювати початкову дію. Код часто використовують після надсилання форми.

Практичні рекомендації: Реалізує схему Post/Redirect/Get і запобігає повторному надсиланню дії.

304

Not Modified (Не змінено)

Умовний запит GET або HEAD указує, що кешоване представлення досі актуальне. Відповідь не має тіла й дає змогу клієнту використати збережену копію.

Практичні рекомендації: Повертайте цей код лише тоді, коли валідатор, наприклад If-None-Match або If-Modified-Since, збігається.

305

Use Proxy (Використовуйте проксі)

Історична відповідь пропонувала клієнту отримати ресурс через проксі. Її скасовано з міркувань безпеки, тож сучасним сервісам не слід її використовувати.

Практичні рекомендації: Не використовуйте цей код; налаштовуйте проксі окремо від протоколу.

306

Не використовується

Це значення зарезервоване або не використовується в сучасних специфікаціях HTTP. Для поточних вебзастосунків воно не має стандартного практичного значення.

Практичні рекомендації: Не надсилайте цей код.

307

Temporary Redirect (Тимчасове перенаправлення)

Ресурс тимчасово розміщено за іншим URI; під час переходу клієнт має зберегти початковий метод і тіло запиту.

Практичні рекомендації: Використовуйте, коли тимчасове переміщення не повинно перетворювати POST на GET.

308

Permanent Redirect (Постійне перенаправлення)

Ресурс переміщено назавжди; під час переходу клієнт має зберегти початковий метод і тіло запиту.

Практичні рекомендації: Використовуйте для постійного переміщення, коли важливо зберегти метод; оновіть канонічні URL-адреси й внутрішні посилання.

4xx — помилки клієнта або запиту

400

Bad Request (Некоректний запит)

Сервер не може обробити запит через некоректний синтаксис, форматування або надані дані. Повторне надсилання того самого запиту без змін навряд чи допоможе.

Практичні рекомендації: Перевірте кодування URL-адреси, синтаксис JSON або тіла запиту, обов’язкові поля та форматування запиту.

401

Unauthorized (Неавторизовано)

У запиті немає дійсних облікових даних для автентифікації на цільовому ресурсі. Попри назву, відповідь означає, що автентифікація потрібна або не пройшла.

Практичні рекомендації: Надайте очікувані облікові дані та додайте виклик автентифікації WWW-Authenticate.

402

Payment Required (Потрібна оплата)

Код зарезервовано для майбутнього використання, хоча деякі продукти застосовують його для оплати або квот. Єдиної сумісної між системами поведінки для оплати не визначено.

Практичні рекомендації: Вважайте значення, визначені постачальником, специфічними для нього; документуйте контракт API.

403

Forbidden (Заборонено)

Сервер зрозумів запит, але відмовляється його виконувати. Дійсні облікові дані не обов’язково змінять результат, оскільки обмеження може бути встановлене політикою.

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

404

Not Found (Не знайдено)

Сервер не може знайти поточне представлення для запитаного URI або не бажає підтверджувати його наявність. Сама відповідь не повідомляє, чи відсутність тимчасова або постійна.

Практичні рекомендації: Виправте URL-адресу, відновіть ресурс або використайте код 410, якщо відомо, що його видалено назавжди.

405

Method Not Allowed (Метод не дозволено)

Ресурс існує, але не підтримує метод, використаний у цьому запиті.

Практичні рекомендації: Поверніть заголовок Allow зі списком методів, які приймає ресурс.

406

Not Acceptable (Неприйнятно)

Сервер не може створити представлення, що відповідає пріоритетам Accept, які клієнт указав у запиті.

Практичні рекомендації: Послабте обмеження Accept або налаштуйте відповідне представлення чи політику узгодження вмісту.

407

Proxy Authentication Required (Потрібна автентифікація проксі)

Проміжний проксі вимагає облікові дані, перш ніж передати запит далі.

Практичні рекомендації: Автентифікуйтеся на проксі за допомогою Proxy-Authenticate / Proxy-Authorization; це відрізняється від автентифікації на вихідному сервері.

408

Request Timeout (Час очікування запиту вичерпано)

Сервер не отримав повний запит протягом часу очікування, який він установив. Клієнт може повторити запит через нове з’єднання.

Практичні рекомендації: Перевірте перебої мережі, розмір завантаження та налаштування часу очікування сервера або проксі.

409

Conflict (Конфлікт)

Запит конфліктує з поточним станом ресурсу, наприклад через розбіжність версій або спробу створити дублікат.

Практичні рекомендації: Поясніть причину конфлікту й надайте клієнту достатньо відомостей про поточний стан, щоб його усунути.

410

Gone (Ресурс видалено)

Ресурс навмисно й, імовірно, назавжди недоступний; відомої заміни немає. Це конкретніше, ніж загальна відповідь «не знайдено».

Практичні рекомендації: Використовуйте, якщо ресурс навмисно видалено; приберіть застарілі внутрішні посилання та згадки.

411

Length Required (Потрібна довжина)

Сервер вимагає заголовок Content-Length, але запит його не містив.

Практичні рекомендації: Надішліть точне значення Content-Length або використайте підтримуваний спосіб передавання даних.

412

Precondition Failed (Попередню умову не виконано)

Умова запиту, наприклад If-Match, виявилася хибною, тому сервер не виконав запитану дію.

Практичні рекомендації: Оновіть представлення й повторіть запит із актуальними валідаторами або станом.

413

Content Too Large (Вміст завеликий)

Тіло запиту перевищує обмеження, яке сервер може або готовий обробити. Сервер може закрити з’єднання або дозволити повторну спробу після зменшення обсягу даних.

Практичні рекомендації: Зменште обсяг даних або змініть задокументовані обмеження завантаження.

414

URI Too Long (URI задовгий)

Ціль запиту задовга для обробки сервером; часто це пов’язано з надмірно довгим рядком параметрів запиту.

Практичні рекомендації: Скоротіть URI або перенесіть відповідні дані до тіла запиту.

415

Unsupported Media Type (Непідтримуваний тип даних)

Сервер відхиляє тіло запиту, оскільки не підтримує його тип даних, кодування вмісту або формат.

Практичні рекомендації: Надішліть підтримувані Content-Type і кодування, а також відповідне їм тіло запиту.

416

Range Not Satisfiable (Діапазон неможливо задовольнити)

Запитаний діапазон байтів неможливо надати, наприклад, якщо він починається за межами довжини представлення.

Практичні рекомендації: Перевірте довжину ресурсу й одиниці діапазону; сервер може повернути Content-Range: bytes */length.

417

Expectation Failed (Очікування не виконано)

Сервер або проміжний вузол не може виконати очікування, зазначене в заголовку Expect.

Практичні рекомендації: Якщо це безпечно й доречно, повторіть запит без непідтримуваного очікування.

418

I'm a teapot (Я — чайник)

Жартівливий код стану зі специфікації до Дня сміху. Це не звичайний контракт помилки застосунку, хоча деякі сервіси використовують його для жарту.

Практичні рекомендації: Не покладайтеся на нього в сумісній із різними системами виробничій поведінці.

421

Misdirected Request (Запит спрямовано не туди)

Запит надійшов на сервер, який не може сформувати авторитетну відповідь для цільового URI; часто причина полягає в невідповідності маршрутизації з’єднання або повноваження HTTP.

Практичні рекомендації: Повторіть запит через відповідне з’єднання та перевірте Host/:authority, SNI і маршрутизацію проксі.

422

Unprocessable Content (Вміст неможливо обробити)

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

Практичні рекомендації: Надавайте практичні пояснення помилок перевірки окремих полів; виправлення даних може дати змогу виконати запит.

423

Locked (Заблоковано)

Ресурс WebDAV заблоковано, тому запитаний метод не можна виконати, доки не буде усунуто причину блокування.

Практичні рекомендації: Перевірте власника блокування, час його дії та обробку маркера блокування WebDAV.

424

Failed Dependency (Залежна операція не виконана)

Операція WebDAV завершилася невдало, оскільки не виконалася необхідна попередня операція в тій самій послідовності запиту.

Практичні рекомендації: Усуньте помилку попередньої дії, перш ніж повторювати залежні операції.

425

Too Early (Занадто рано)

Сервер відмовляється обробляти запит, який могли повторно надіслати в ранніх даних, щоб зменшити ризик відтворення запиту.

Практичні рекомендації: Повторіть запит після встановлення з’єднання, не надсилаючи ранніх даних.

426

Upgrade Required (Потрібне оновлення протоколу)

Сервер відмовляється від поточного протоколу та повідомляє, що клієнту слід перейти на інший.

Практичні рекомендації: Додайте заголовок Upgrade із переліком підтримуваних протоколів.

428

Precondition Required (Потрібна попередня умова)

Сервер вимагає умовний запит, щоб запобігти втраті оновлень, але клієнт надіслав безумовний запит.

Практичні рекомендації: Отримайте поточний стан і надішліть відповідну умову, наприклад If-Match.

429

Too Many Requests (Забагато запитів)

За визначений сервером період клієнт надіслав надто багато запитів і перевищив обмеження частоти.

Практичні рекомендації: Зменште частоту запитів, дотримуйтеся Retry-After, якщо він наявний, і уникайте одночасних повторних спроб великої кількості клієнтів.

431

Request Header Fields Too Large (Поля заголовка запиту завеликі)

Сервер не оброблятиме запит, оскільки одне чи кілька полів заголовка або весь набір заголовків завеликі.

Практичні рекомендації: Зменште обсяг файлів cookie або власних заголовків чи змініть навмисно встановлене обмеження сервера.

451

Unavailable For Legal Reasons (Недоступно з юридичних причин)

Сервер не може надати запитаний ресурс через юридичне обмеження.

Практичні рекомендації: За потреби поясніть причину й межі обмеження, не розкриваючи захищених відомостей.

5xx — помилки сервера та проміжних вузлів

500

Internal Server Error (Внутрішня помилка сервера)

На сервері виникла неочікувана ситуація, через яку запит не вдалося завершити. Це загальна відповідь на випадок, коли немає точнішої помилки сервера.

Практичні рекомендації: Зіставте запит із журналами сервера й не показуйте відвідувачам трасування стека.

501

Not Implemented (Не реалізовано)

Сервер не підтримує функцію, необхідну для виконання запиту; зазвичай ідеться про нереалізований метод або можливість.

Практичні рекомендації: Реалізуйте потрібну функцію або використайте підтримуваний метод; цей код не призначено для тимчасового перевантаження.

502

Bad Gateway (Помилка шлюзу)

Сервер, що працює як шлюз або проксі, отримав некоректну відповідь від сервера вище за ланцюжком.

Практичні рекомендації: Перевірте стан сервера вище за ланцюжком, налаштування протоколу й TLS, DNS та журнали проксі.

503

Service Unavailable (Сервіс недоступний)

Сервер тимчасово не може обробити запит, часто через технічне обслуговування або перевантаження.

Практичні рекомендації: За можливості вкажіть Retry-After, надайте зрозумілу відповідь і встановіть правила кешування, придатні для тимчасової помилки.

504

Gateway Timeout (Час очікування шлюзу вичерпано)

Шлюз або проксі не отримав своєчасної відповіді від сервісу вище за ланцюжком.

Практичні рекомендації: Перевірте затримку сервісу вище за ланцюжком, мережевий маршрут і бюджети часу очікування на всіх його ділянках.

505

HTTP Version Not Supported (Версія HTTP не підтримується)

Сервер не підтримує основну версію HTTP, використану в запиті.

Практичні рекомендації: Використовуйте підтримувану версію протоколу або оновіть налаштування сервера чи проксі.

506

Variant Also Negotiates (Варіант також узгоджує вміст)

Помилка конфігурації сервера створила циклічне узгодження вмісту: вибраний варіант знову запускає узгодження.

Практичні рекомендації: Виправте конфігурацію варіантів або узгодження вмісту; помилка виникла на вихідному сервері.

507

Insufficient Storage (Недостатньо місця для зберігання)

Сервер WebDAV не може зберегти представлення, необхідне для завершення операції.

Практичні рекомендації: Звільніть або збільште обсяг сховища й перевірте квоти, перш ніж повторювати запит.

508

Loop Detected (Виявлено цикл)

Під час обробки запиту сервер виявив нескінченний цикл, часто під час обходу прив’язок WebDAV.

Практичні рекомендації: Усуньте циклічний зв’язок між ресурсами або правило обробки, що його спричинило.

510

Not Extended (Розширення не надано)

Для запиту потрібне розширення, яке сервер не підтримує.

Практичні рекомендації: Використайте підтримуваний набір розширень або узгодьте альтернативу.

511

Network Authentication Required (Потрібна автентифікація в мережі)

Щоб отримати доступ до мережі, клієнт має пройти автентифікацію, зазвичай через портал авторизації. Код призначений для мережевих проміжних вузлів, а не для входу на вебсайт.

Практичні рекомендації: Пройдіть автентифікацію для доступу до мережі, а потім повторіть початковий запит.

Відомі нестандартні відповіді та відповіді конкретних постачальників

Ці значення трапляються в окремих продуктах, журналах серверів, CDN або застосунках. Вони не мають того самого значення, що й зареєстровані стандартні коди; звіряйтеся з документацією сервісу, який їх сформував.

419

Authentication Timeout (Тайм-аут автентифікації; нестандартний)

Деякі застосунки використовують цю назву, коли завершується сеанс автентифікації. Це не універсально визначений статус HTTP, тому клієнти не можуть покладатися на узгоджене значення.

Практичні рекомендації: Повторно пройдіть автентифікацію згідно з умовами сервісу.

420

Enhance Your Calm (Заспокойтеся; нестандартний)

Відповідь окремих постачальників, яку історично використовували для обмеження частоти запитів. Її значення залежить від реалізації.

Практичні рекомендації: Дотримуйтеся задокументованих рекомендацій щодо обмеження запитів.

444

Connection Closed (З’єднання закрито; нестандартний)

Деякі сервери закривають з’єднання без звичайної відповіді, часто для фільтрації запитів.

Практичні рекомендації: Перевірте журнали постачальника; замість показу цього коду клієнт може повідомити про помилку мережі.

449

Retry With (Повторіть із додатковими даними; нестандартний)

Розширення Microsoft, яке деякі сервіси використовують, щоб попросити клієнта повторити запит із додатковими даними.

Практичні рекомендації: Дотримуйтеся документації відповідного API.

499

Client Closed Request (Клієнт закрив запит; нестандартний)

Зворотний проксі може записати цей статус у журнал, коли клієнт розриває з’єднання до завершення відповіді сервера. Зазвичай це класифікація в журналі, а не відповідь, доставлена клієнту.

Практичні рекомендації: Перевірте скасування запитів клієнтами й повільні відповіді серверів.

509

Bandwidth Limit Exceeded (Перевищено ліміт трафіку; нестандартний)

Деякі хостингові платформи використовують цей код для квоти або обмеження трафіку. Це не загальне взаємно сумісне значення HTTP.

Практичні рекомендації: Перевірте квоту хостингу та налаштування оплати.

520

Web Server Returned an Unknown Error (Вебсервер повернув невідому помилку; код постачальника)

CDN або проксі може повернути його, отримавши неочікувану або порожню відповідь від вихідного сервера.

Практичні рекомендації: Порівняйте журнали периферійного й вихідного вузлів; перевірте, чи надсилає вихідний сервер коректну відповідь HTTP.

521

Web Server Is Down (Вебсервер не працює; код постачальника)

Проксі не зміг установити з’єднання з вихідним сервером або той відхилив з’єднання.

Практичні рекомендації: Перевірте доступність вихідного сервера, правила брандмауера та списки дозволених адрес проксі.

522

Connection Timed Out (Час очікування з’єднання вичерпано; код постачальника)

Периферійний сервіс підключився або намагався підключитися до вихідного сервера, але не завершив обмін до спливу часу очікування.

Практичні рекомендації: Перевірте швидкість відповіді вихідного сервера та затримку мережі.

523

Origin Is Unreachable (Вихідний сервер недоступний; код постачальника)

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

Практичні рекомендації: Перевірте DNS, маршрутизацію та IP-адресу вихідного сервера.

524

A Timeout Occurred (Час очікування вичерпано; код постачальника)

З’єднання з вихідним сервером установлено, але він не надіслав відповідь HTTP вчасно.

Практичні рекомендації: Скоротіть час обробки на вихідному сервері або змініть підтримувані налаштування часу очікування.

525

SSL Handshake Failed (Не вдалося узгодити SSL; код постачальника)

Проксі не зміг завершити узгодження TLS із вихідним сервером.

Практичні рекомендації: Перевірте сертифікати, сумісність протоколів і шифрів та SNI.

526

Invalid SSL Certificate (Недійсний сертифікат SSL; код постачальника)

Проміжний вузол відхилив сертифікат вихідного сервера під час перевірки.

Практичні рекомендації: Установіть дійсний довірений сертифікат із правильним доменним ім’ям, чинним строком дії та повним ланцюжком.

527

Railgun Error (Помилка Railgun; код постачальника)

Застарілий статус проксі або окремого постачальника, що повідомляє про збій з’єднання для прискорення вихідного сервера.

Практичні рекомендації: Перевірте конектор постачальника та маршрут до вихідного сервера.

598

Network Read Timeout (Час очікування читання з мережі вичерпано; нестандартний)

Деякі клієнти або проксі використовують це значення для позначення перевищення часу читання з мережі. Воно не має універсального значення в HTTP.

Практичні рекомендації: Перевірте діагностичні дані клієнта або проксі.

599

Network Connect Timeout (Час очікування підключення до мережі вичерпано; нестандартний)

Деякі проксі використовують це значення, коли спливає час очікування спроби мережевого з’єднання. Його значення залежить від реалізації.

Практичні рекомендації: Перевірте доступність вузла та налаштування часу очікування.

Використання кодів стану для аудиту перенаправлень і SEO

Для постійної зміни URL використовуйте постійне перенаправлення лише тоді, коли цільова адреса має замінити стару; для тимчасової зміни виберіть тимчасову відповідь. Скорочуйте ланцюжки й перенаправляйте безпосередньо на кінцеву еквівалентну сторінку. Переконайтеся, що кожне значення Location працює, кінцева відповідь доречна, а канонічні теги й внутрішні посилання узгоджені з потрібною URL-адресою. Кінцева відповідь 2xx підтверджує успішний HTTP-запит, але не засвідчує, що сторінка корисна, індексується або технічно справна.

Джерела та примітки

На цій сторінці узагальнено семантику кодів стану HTTP для практичного використання. Реєстр стандартів і RFC є авторитетними джерелами стандартизованих кодів; MDN пропонує доступний технічний посібник, а Вікіпедія — допоміжний огляд, який редагує спільнота.