Укр
Рус
Українська мова
Русский язык
SEO

HTTP коди відповіді сервера: що це і як з ними працювати?

Знання цих кодів - важливий етап запобігання, виявлення і усунення помилок при веденні проекту.
04 січня 2021
0
10 хв
logo

Бажаєш заробляти більше? Пройди курс Комплексний інтернет-маркетинг від команди tripmydream та опануй професію за 3 місяці!

Код стану HTTP - це частина першого рядка відповіді сервера при запитах по протоколу HTTP, яка представляє ціле число з трьох десяткових цифр. Код видно завжди разом з пояснювальним текстом англійською. Робот пошукової системи (Google, Яндекс) спочатку дивиться на код відповіді сторінки, а вже потім вирішує, що далі робити.

За кодами відповіді сторінок вашого сайту важливо стежити, так як це один з основоположних показників здоров'я сайту.

Варіанти перевірки коду

  1. На панелі інструментів розробника в Google Chrome є вкладка Network, яка показує код. Полегшений варіант доступу до неї - натиснути F12 і оновити сторінку.
  2. За допомогою HTTP Headers можна дізнатися про кожну сторінку.
  3. За допомогою спеціальних програм, які можуть перевірити список URL або просканувати весь сайт на відповіді сервера. Наприклад, Netpeak Spider, Netpeak Checker, Serpstat, Screaming Frog SEO Spider, Urlitor.

Класи стану

«Класи стану» - це коди згруповані за загальними ознаками. Кожен клас визначається першою цифрою коду.

  1. 1xx - інформаційні.
    Тимчасові коди, пов'язані з передачею даних, інформують про продовження прийнятого запиту.
  2. 2xx - успішні.
    Запит отримано та опрацьовано.
  3. 3xx - перенаправлення (редирект).
    Для виконання запиту необхідні ще дії.
  4. 4xx - клієнтські помилки.
    Запит не вдався через помилки клієнта.
  5. 5xx - серверні помилки.
    У цьому класі сервер завжди повідомляє про причини необробленого запиту. Клієнтської помилки в цьому випадку немає.

Коди стану HTTP, які кращі запам'ятати

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

  • 200 OK - зі сторінкою все добре, можна йти далі.
  • 301 Moved Permanently - редирект на нову сторінку на постійній основі, тобто сторінка переміщена на новий URL назавжди.
  • 404 Not Found - сторінка не знайдена і тут вже потрібно розбиратися:
    • Або її і не повинно бути взагалі, і хто-то просто зробив помилку в написанні URL сторінки - тоді все нормально, бажано просто виправити цю помилку
    • Важлива сторінка раптом перестала працювати, тоді терміново потрібно розбиратися чому і виправляти.
    • Десь на сайті з'явилися посилання на сторінки, які віддають 404 - розібратися в причині появи посилань і виправити.

Все HTTP коди відповіді сервера і їх значення

Інформаційні

  • 100 Continue - «Продовжити». Запит успішно прийнятий.
  • 101 Switching Protocol - «Перемикання протоколу». Сервер перейшов на протокол заголовка.
  • 102 Processing - «В обробці». Сервер ще не обробив отриманий запит.
  • 103 Early Hints - «Ранні підказки». Вказуються ресурси, які можна завантажити до відповіді сервера

Успішні

  • 200 OK - «Успішно». Запит оброблений. Залежить від запитуваної методу HTTP:
    • GET: «ОТРИМАТИ». Ресурс переданий в тілі відповіді.
    • HEAD: «ЗАГОЛОВОК». Заголовки передані.
    • POST: «ПОСИЛКА». Ресурс результату дії сервера на запит переданий.
    • TRACE: «відстежувати». Відповідь містить тіло запиту.
  • 201 Created - «Створено». Запит виконаний і ресурс створений.
  • 202 Accepted - «Прийнято». Запит прийнятий, але не оброблений. Чи не підтримується - немає способу за допомогою HTTP відправити відповідь пізніше.
  • 203 Non-Authoritative Information - «Інформація не авторитетна». Повернута інформація надана з іншого джерела, а не від стартового сервера.
  • 204 No Content - «Немає вмісту». Немає вмісту для відповіді. Заголовки відповіді при цьому надсилаються.
  • 205 Reset Content - «Скинути вміст». Повідомлення, що запит оброблений, і необхідно відправити відображення документа цього запиту.
  • 206 Partial Content - «Частковий вміст». Використовується для окремого завантаження в кілька потоків при відправці заголовка діапазону.

Перенаправлення

  • 300 Multiple Choice - «Множинний вибір». У запиту є більше однієї можливої відповіді. Необхідно вибрати один з них, але стандартного способу вибору немає.
  • 301 Moved Permanently - «переміщених на постійній основі». Змінився URI запитуваного ресурсу. Новий URI, може бути, надано у відповіді.
  • 302 Found - «Знайдено». Тимчасово змінено запитуваний ресурс. У майбутньому зміни в URI, можливо, будуть доступні.
  • 303 See Other - «Перегляд інших ресурсів». Напрямок для отримання запитуваного ресурсу в інший URI із запитом GET.
  • 304 Not Modified - «Не модифіковано». Запитаний ресурс не змінений. Можна використовувати кешовану версію відповіді далі.
  • 305 Use Proxy - «Використовувати проксі». Запитуваний ресурс має доступ через проксі.
  • 306 Switch Proxy - «Більше не використовувати».
  • 307 Temporary Redirect - «Тимчасове перенаправлення». Відправлено для отримання запитаного ресурсу на інший URL-адресу за допомогою методу попереднього запиту.
  • 308 Permanent Redirect - «Перенаправлення на постійній основі». Постійне перебування ресурсу в іншому URI, який знаходиться в заголовку.

Клієнтські

  • 400 Bad Request - «Поганий запит». Некоректний синтаксис не дає серверу обробити запит.
  • 401 Unauthorized - «Неавторизовано». Необхідна аутентифікація для отримання відповіді.
  • 402 Required - «Необхідна оплата». Код використання в майбутньому.
  • 403 Forbidden - «Заборонено». Сервер відмовляє у відповіді, так як у клієнта немає прав доступу до змісту ресурсу.
  • 404 Not Found - «Не знайдений». Сервер не може знайти запитуваний ресурс. Через частоти появи в інтернеті код відповіді є найвідомішим.
  • 405 Method Not Allowed - «Метод не дозволено». Метод, відомий серверу, деактивовано і неможливо його використовувати.
  • 406 Not Acceptable - Не знайдено контент із зазначеними критеріями від user agent.
  • 407 Proxy Authentication Required - Аналогічно коду 401. Тільки в цьому коді потрібно аутентифікація для проксі сервера.
  • 408 Request Timeout - Відповідь коду може прийти без попереднього запиту, тому сервер відключає невикористовуване з'єднання.
  • 409 Conflict - Запит в конфлікті з реальним станом сервера.
  • 410 Gone - Контент, який був запитаний, видалено з сервера.
  • 411 Length Required - Серверу потрібен вказаний заголовок Content-Length, тому запит відхилений.
  • 412 Precondition Failed - У заголовках вказані умови, які серверу неможливо виконати.
  • 413 Request Entity Too Large - Ліміт сервера перевищено розміром запиту. Можливо закриття з'єднання сервером, повернувши заголовок Retry-After.
  • 414 Request-URI Too Long - URI занадто довгий для обробки сервером.
  • 415 Unsupported Media Type - Запит відхилений. Формат медіа, який запитано у сервера, не підтримується.
  • 416 Requested Range Not Satisfiable - Ймовірно, діапазон заголовка не може бути виконано, через вихід переданого URI за межі.
  • 417 Expectation Failed - Очікування, яке отримали з заголовка запиту Expect, не може виконуватися сервером.

Серверні

  • 500 Internal Server Error - «Внутрішня помилка сервера». Сервер не може вирішити поточну проблему.
  • 501 Not Implemented - «Не виконано». Метод запиту не обробляється і не підтримується сервером.
  • 502 Bad Gateway - «Поганий шлюз». Під час роботи в якості шлюзу сервер отримав недійсну відповідь.
  • 503 Service Unavailable - «Сервіс недоступний». Сервер не готовий обробляти запит, причиною є відключення сервера або його перевантаженість. Сторінка повинна відправляти пояснення проблеми разом з відповіддю.
  • 504 Gateway Timeout - Сервер працює в вигляді шлюзу, не отримуючи своєчасно відповідь.
  • 505 HTTP Version Not Supported - «HTTP-версія не підтримується». Не підтримується HTTP-версія, яка використовується в запиті.
Сподобалась стаття?
😍
2
😂
😄
1
😐
🤔
1
😩
Розповісти друзям: