Переходите з UptimeRobot? Імпортуйте монітори одним кліком за ключем API лише для читання.Почати безкоштовно →
  1. Головна
  2. Безкоштовні інструменти
  3. Коди відповіді HTTP

Коди відповіді HTTP

Усі поширені коди відповіді HTTP від 1xx до 5xx простими словами і що робити, коли їх бачить монітор, зокрема помилки nginx і Cloudflare. Безкоштовно.

У стовпці вердикту показано, як HTTP-монітор Tenium обробляє код із типовими налаштуваннями: очікуваний код від 200 до 299, редиректи виконуються. Очікувані коди можна змінити для кожного монітора.

53 з 53 кодів

КодНазваЩо це означаєЩо робити, коли код бачить ваш моніторВердикт монітора за замовчуванням
100 Continue Сервер отримав заголовки запиту, і клієнт може надсилати тіло. У моніторі ви майже ніколи його не побачите: HTTP-клієнт обробляє його за вас. Якщо перевірка повідомляє такий код, між вами й сервером хтось дивно надсилає проміжні відповіді. Спробуйте URL через curl -v. Трапляється рідко
101 Switching Protocols Сервер погоджується перейти на інший протокол, наприклад WebSocket. Очікуваний на кінцевій точці WebSocket. Простий HTTP-монітор для неї не підходить: стежте за сторінкою, яка віддає застосунок, або за портом. Трапляється рідко
103 Early Hints Попередня відповідь, що дає браузеру почати завантаження ресурсів до справжньої відповіді. Це не збій. Якщо монітор його показує, посередник неправильно обробляє проміжні відповіді; дивіться на кінцевий код. Трапляється рідко
200 OK Запит виконано, у відповіді є сторінка або дані. Добре, але це ще не доказ, що сторінка правильна. WordPress і багато застосунків повертають 200 із повідомленням про помилку в тілі. Додайте перевірку ключового слова для тексту, який є лише на справній сторінці. Працює
201 Created Запит виконано й створено новий ресурс, зазвичай після POST. Нормально для API, що створює об’єкти. Якщо ви стежите за ендпоінтом POST, залиште 201 серед очікуваних кодів (типовий діапазон 200-299 його вже містить). Працює
202 Accepted Запит прийнято в обробку, але ще не завершено. Нормально для API на основі черг. Це нічого не каже про те, чи успішно виконається завдання пізніше, тож поєднайте його з heartbeat для самого завдання. Працює
203 Non-Authoritative Information Відповідь — змінена копія від проксі, а не точна відповідь першоджерела. Рідко. Проксі або CDN переписує відповіді. Зазвичай безпечно; переконайтеся, що тіло таке, як ви очікуєте. Працює
204 No Content Запит виконано, тіла навмисно немає. Нормально для API та health-ендпоінтів. Перевірка ключового слова не працює на порожньому тілі, тож тут покладайтеся на код відповіді. Працює
206 Partial Content Повернуто лише частину файлу, бо запитано діапазон байтів. Нормально для відео та великих завантажень. Монітор не надсилає заголовків Range, тож якщо ви бачите його на сторінці, кеш або сервер поводяться незвично. Працює
300 Multiple Choices Є кілька можливих відповідей, і клієнт має обрати. Рідко в вебі. Якщо його отримує монітор, URL неоднозначний: посилайтеся на конкретний ресурс. Йде за редиректом
301 Moved Permanently У сторінки нова постійна адреса. Оновіть монітор до кінцевого URL, щоб кожна перевірка була одним запитом, а не двома. Ланцюжок редиректів, що завершується кодом 200, вважається робочим; той, що зациклюється або завершується помилкою, — ні. Йде за редиректом
302 Found Сторінка тимчасово розташована за іншою адресою. Поширено для редиректів на вхід і перемикання мови. Якщо монітор іде за ним на сторінку входу й перевірка проходить, ви перевіряєте не ту сторінку, яку думаєте. Спрямуйте його на URL без редиректу. Йде за редиректом
303 See Other Результат за іншим URL, його слід отримати через GET, зазвичай після відправлення форми через POST. Очікувано після успішного відправлення форми. Для монітора на ендпоінті POST вирішіть, чи йти за ним, чи оцінювати сам код 303. Йде за редиректом
304 Not Modified Кешована копія досі дійсна; тіло не надсилається. З’являється лише на умовних запитах, яких монітор не робить. Якщо він з’явився, шар кешу відповідає дивно; перевірте заголовки інструментом HTTP-заголовків. Трапляється рідко
307 Temporary Redirect Тимчасовий редирект, що зберігає початковий метод і тіло. Часто трапляється, коли сайт примусово переводить на HTTPS або домен має HSTS. Стежте одразу за URL з https, щоб пропустити стрибок. Йде за редиректом
308 Permanent Redirect Постійний редирект, що зберігає початковий метод і тіло. Для моніторингу те саме, що 301: переключіть монітор на кінцеву адресу. Перевірте цикли, якщо два правила вказують одне на одне. Йде за редиректом
400 Bad Request Сервер не зміг зрозуміти запит. Перевірте URL на сторонні символи, пошкоджений заголовок або завеликий cookie. Якщо це почалося після змін, проксі чи правило WAF може переписувати запит. Збій
401 Unauthorized Потрібна автентифікація або облікові дані були неправильні. Якщо сторінка має бути приватною, додайте 401 до очікуваних кодів або додайте до монітора облікові дані basic-auth. Якщо вона мала бути публічною, її закрило правило доступу чи плагін. Збій
402 Payment Required Зарезервовано на майбутнє; деякі сервіси використовують його для проблем з оплатою. Якщо його повертає хмарний сервіс чи API, перевірте в постачальника обліковий запис і стан оплати. Збій
403 Forbidden Сервер зрозумів запит, але відмовляється його виконати. Найчастіша причина для монітора — брандмауер, WAF або плагін безпеки блокує його IP-адресу чи User-Agent. Додайте перевірку до білого списку (allow-list), див. список IP-адрес перевірок. Також перевірте права на файли та налаштування індексу каталогу. Збій
404 Not Found За цим URL на сервері нічого немає. Сторінку видалено, переміщено або змінилася структура постійних посилань. Виправте URL у моніторі або відновіть сторінку. 404 по всьому сайту після оновлення вказує на зламані правила переписування. Збій
405 Method Not Allowed URL існує, але не для цього методу HTTP. Деякі ендпоінти відмовляються від HEAD або GET. Змініть метод монітора на той, що ендпоінт приймає, зазвичай GET. Збій
406 Not Acceptable Сервер не може сформувати відповідь, яка відповідає заголовкам Accept. Часто це WAF або суворе узгодження вмісту. Перевірте, який заголовок Accept надсилає монітор і що віддає ендпоінт. Збій
408 Request Timeout Сервер перестав чекати на запит. Зазвичай повільний або перевантажений сервер чи проксі з коротким таймаутом. Подивіться на навантаження сервера та графік часу відповіді. Збій
409 Conflict Запит суперечить поточному стану ресурсу. Типово для API із записом. Для монітора це зазвичай означає, що ви викликаєте ендпоінт запису; використовуйте health-URL лише для читання. Збій
410 Gone Сторінки більше немає назавжди, і вона не повернеться. Це навмисно, на відміну від 404. Видаліть монітор або спрямуйте його на заміну. Збій
413 Content Too Large Тіло запиту більше, ніж приймає сервер. Збільште ліміт завантаження у вебсервері та PHP або зменште запит. Монітор зазвичай це не викликає. Збій
414 URI Too Long URL довший, ніж приймає сервер. Скоротіть рядок запиту в URL монітора або пошукайте цикл редиректів, що весь час додає параметри. Збій
415 Unsupported Media Type Сервер не приймає тип вмісту запиту. Звірте заголовок Content-Type і тіло монітора з тим, що очікує API. Збій
418 I'm a teapot Жартівливий код з першоквітневого RFC, який деякі сервіси використовують навмисно. Деякі блокувальники ботів повертають його небажаним клієнтам. Сприймайте його як блокування й додайте монітор до білого списку. Збій
421 Misdirected Request Запит потрапив на сервер, який не може відповідати за це ім’я хоста. Часто невідповідність TLS або SNI за спільним проксі. Перевірте сертифікат і віртуальний хост для цього імені. Збій
422 Unprocessable Content Запит правильно сформований, але містить недійсні дані. Валідація API не пройшла. Перевірте тіло, яке надсилає монітор, або перейдіть на health-ендпоінт GET. Збій
425 Too Early Сервер не оброблятиме запит, який можуть повторити (ранні дані TLS). Рідко. Повторіть; якщо стійко, подивіться налаштування ранніх даних TLS 1.3 на проксі. Збій
429 Too Many Requests Вас обмежує ліміт частоти запитів. Сервер або WAF стримує монітор. Додайте його IP-адреси до білого списку, збільште інтервал або виключіть URL з лімітів. Не ігноруйте: той самий ліміт може зачепити й справжніх відвідувачів. Збій
431 Request Header Fields Too Large Заголовки, найчастіше cookie, завеликі. Очистіть cookie в браузері, щоб переконатися, а потім збільште ліміт розміру заголовків у вебсервері чи проксі. Збій
451 Unavailable For Legal Reasons Вміст заблоковано з юридичних причин. Часто це гео-блокування або рішення суду. Якщо блокування очікуване, додайте 451 до очікуваних кодів монітора; інакше дізнайтеся, хто встановив правило. Збій
500 Internal Server Error Сервер натрапив на непередбачену помилку під час обробки запиту. Спершу прочитайте журнали помилок застосунку й вебсервера. Якщо це сталося після розгортання, відкотіть його. У WordPress вимикайте плагіни по одному. Збій
501 Not Implemented Сервер не підтримує запитаний метод. Переконайтеся, що метод правильний і що сервер чи проксі його підтримує; спробуйте GET. Збій
502 Bad Gateway Шлюз або проксі отримав недійсну відповідь від сервера за ним. Процес застосунку за nginx, балансувальником або CDN упав чи перезапустився. Перевірте, що сервіс застосунку працює, і прочитайте його журнал. Збій
503 Service Unavailable Сервер перевантажений або вимкнений на обслуговування. Перевірте навантаження, пам’ять і ліміти з’єднань. Якщо це планове обслуговування, використайте вікно обслуговування, щоб воно не рахувалося простоєм. Збій
504 Gateway Timeout Шлюз або проксі не дочекався відповіді від сервера за ним. Застосунок надто повільний або завис: повільні запити, застряглий воркер чи заблокований зовнішній API. Подивіться на час відповіді та журнал повільних запитів. Збій
505 HTTP Version Not Supported Сервер не підтримує використану версію HTTP. Рідко. Перевірте налаштування протоколів на проксі й сервері (HTTP/2, HTTP/3). Збій
507 Insufficient Storage Сервер не може зберегти те, що потрібно для виконання запиту. Диск або квота заповнені. Звільніть місце, а потім з’ясуйте, що його заповнює (журнали, резервні копії, завантаження). Збій
508 Loop Detected Сервер виявив нескінченний цикл. Деякі спільні хостинги також використовують 508 для обмежень ресурсів. Якщо ви на спільному хостингу, обліковий запис досяг ліміту процесора чи процесів: подивіться на трафік і повільні плагіни. Інакше шукайте цикл переписування чи проксі. Збій
511 Network Authentication Required Мережа вимагає входу, як-от на захоплювальних порталах (captive portal). Перевірка проходить через captive portal або обмежену мережу. Переконайтеся, що монітор досягає справжнього сайту. Збій
499 Client Closed Request (nginx) nginx записує його, коли клієнт закрив з’єднання раніше, ніж відповідь була готова. Клієнту він не надсилається. Ви побачите його в журналах nginx, а не в моніторі. Багато 499 означає, що застосунок повільніший, ніж відвідувачі готові чекати. Збій
520 Web Server Returned an Unknown Error (Cloudflare) Cloudflare отримав від вашого сервера-першоджерела порожню, завелику або іншу несподівану відповідь. Перевірте журнал помилок першоджерела, розмір заголовків відповіді та чи не відкидає брандмауер запити Cloudflare. Збій
521 Web Server Is Down (Cloudflare) Cloudflare не зміг з’єднатися з вашим сервером-першоджерелом. Першоджерело вимкнене, не слухає порт або блокує діапазони IP-адрес Cloudflare. Запустіть сервіс і дозвольте Cloudflare в брандмауері. Збій
522 Connection Timed Out (Cloudflare) Cloudflare дістався вашого першоджерела, але з’єднання не завершилося вчасно. Першоджерело перевантажене або брандмауер відкидає пакети. Перевірте навантаження, мережу та брандмауер першоджерела. Збій
523 Origin Is Unreachable (Cloudflare) Cloudflare не бачить маршруту до вашого першоджерела. Перевірте DNS для адреси першоджерела в Cloudflare та що IP-адреса першоджерела правильна й досяжна. Збій
524 A Timeout Occurred (Cloudflare) Першоджерело прийняло з’єднання, але не відповіло в межах часового ліміту Cloudflare. Повільний запит: довгий скрипт, звіт чи експорт. Прискоріть його, винесіть у фонове завдання або відповідайте раніше. Збій
525 SSL Handshake Failed (Cloudflare) Cloudflare не зміг завершити рукостискання TLS із першоджерелом. Перевірте, що першоджерело віддає HTTPS на 443 із робочим сертифікатом і сумісними налаштуваннями TLS. Збій
526 Invalid SSL Certificate (Cloudflare) Cloudflare не зміг перевірити сертифікат першоджерела в режимі Full (strict). Оновіть або замініть сертифікат першоджерела чи виправте ланцюжок. Інструмент перевірки SSL покаже, що віддає першоджерело. Збій

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

Почати безкоштовно

Як монітор доступності оцінює код відповіді

Монітор запитує URL і порівнює код відповіді з тим, який ви йому наказали очікувати. В Tenium типово це від 200 до 299, а редиректи виконуються, тож 301, що веде на 200, вважається робочим. Усе інше, зокрема кожен 4xx і 5xx, — це збій, який підтверджується другою перевіркою, перш ніж відкриється інцидент.

Очікувані коди можна змінити для кожного монітора: списком на кшталт `200,204` або класом на кшталт `2xx,3xx`. Робіть це свідомо — для приватної сторінки, що слушно відповідає 401, або для ендпоінта, що відповідає 204. Не робіть цього, щоб заглушити монітор, який вам про щось повідомляє.

Коди, які легко прочитати неправильно

Короткий список тих, що найчастіше плутають на практиці:

  • 200 не означає, що сторінка правильна. Багато застосунків повертають 200 із повідомленням про помилку в тілі, тож додайте перевірку ключового слова для тексту, який є лише на справній сторінці.
  • 301 і 302 — обидва редиректи, але лише 301 каже, що переміщення постійне. Спрямуйте монітор на кінцевий URL, щоб кожна перевірка була одним запитом.
  • 401 означає «хто ви?», а 403 — «я знаю, і ні». Монітор, який отримує 403 на сайті, що відкривається у вашому браузері, зазвичай заблокований брандмауером або плагіном безпеки.
  • 502, 503 і 504 надходять із шару перед застосунком. 502 — це невдала відповідь, 503 — «недоступний або перевантажений», 504 — «надто повільно». Кожен вказує на інше місце, де шукати.
  • 429 — обмеження частоти запитів. Якщо його бачить ваш монітор, його можуть бачити й справжні відвідувачі.

Як користуватися таблицею

Введіть код або слово, щоб відфільтрувати, або оберіть клас кнопками. У кожному рядку сказано, що означає код і що спробувати насамперед, коли його повідомляє монітор доступності. Коди 499 і 520-526 не входять у стандарт HTTP: їх використовують nginx і Cloudflare, і вони трапляються в журналах та на сторінках помилок сайтів за цими інструментами.

Запитання про інструмент

Чим відрізняються 502, 503 і 504?

502 Bad Gateway означає, що проксі отримав недійсну відповідь від застосунку за ним, часто тому, що застосунок упав. 503 Service Unavailable означає, що сервер перевантажений або на обслуговуванні. 504 Gateway Timeout означає, що застосунок не відповів вчасно. Перевіряйте процес, навантаження й повільні запити саме в такому порядку.

Чи вважати редирект 3xx робочим станом?

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

Чому монітор отримує 403, коли сайт працює в моєму браузері?

Брандмауер, WAF або плагін безпеки блокує IP-адресу чи User-Agent монітора. Додайте адреси перевірок зі сторінки IP-адрес перевірок до білого списку (allow-list), і монітор сприйматимуть як звичайного відвідувача.

Чи можна змінити, які коди вважаються робочими?

Так. У кожного HTTP-монітора є налаштування очікуваного коду. Використайте список на кшталт 200,204 або клас на кшталт 2xx,3xx. Типово це від 200 до 299.