Коди відповідей сервера

Коди є трьома значними числами, які повертає сервер при надходженні запиту до нього. Код буде повернутий або відвідувачу сайту або роботу пошукової системи при скануванні сторінок сайту. Залежно від стану кожна сторінка сайту може повернути свій індивідуальний код сервера.
Тому при СЕО оптимізації сайту дуже важливо перевірити, які коди повертають сторінки вашого сайту, щоб не зашкодити індексації та позиціям у пошуковій видачі.
Сервер повертатиме код 200 для всіх сторінок сайту, які знаходяться в робочому стані та відкриті для індексації.
Класифікація кодів
Усього є п'ять груп (класів) кодів, приналежність до того чи іншого класу визначається першою цифрою коду. Наприклад:
1** - будь-який часовий код, який відповідає лише за інформаційну складову. Говорить про те, що запит відвідувача прийнято та йде процес його обробки;
2** - коди цього класу повертаються сервером за успішного результату обробки.
3** - коди редиректів (перенаправлень). Отримавши один із кодів цього класу буде виконано переадресацію на інший URL.
4** - сервер не зміг виконати запит, що надійшов з клієнтської сторони - клієнтська помилка.
5** – сигналізує про помилки на стороні сервера. Сервер крім коду помилки, поверне її причину, чому він не зміг обробити запит на своїй стороні.
Як перевірити код відповіді сервера
Відкрийте в браузері Chrome потрібну сторінку сайту, натисніть Crtl+Shift+I, щоб відкрити панель інструментів розробника, потім виберіть вкладку “Network” та клацніть на ваш домен у списку завантажених елементів. У вікні Headers ви побачите код відповіді сервера. Можливо, потрібно перезавантажити сторінку вже при відкритій панелі розробника, щоб оновити дані.
Приклад на скріншоті.
Виконати перевірку коду ви можете і на спеціалізованих сервісах, які легко знайти в Google, на запит «Перевірити код відповіді сервера»
Що означають коди відповідей
Розглянемо найпоширеніші коди, які можуть зустрічатися під час роботи з сайтами:
200 (Okay) – найпоширеніший код відповіді. Саме він говорить про те, що із завантажуваною сторінкою все добре, вона буде доступна відвідувачам та пошуковим системам для індексації.
301 (Moved Permanently) – цей код говорить про необхідність виконати перенаправлення (редирект) на інше посилання. Цей код використовується, якщо потрібно повідомити відвідувачу, що сторінку було переміщено на новий URL назавжди. Вага від старого URL буде перенаправлена на нову URL-адресу і позиції в пошуковій видачі вдасться зберегти. 301 редирект також налаштовує при зміні домену сайту, щоб перенести вагу всіх посилань на новий домен.
302 (Found, Moved Temporarily) – код аналогічний попередньому, крім того, але застосовує для тимчасового редиректа на нове посилання. Вага посилання при цьому не передається на нову URL-адресу. Попереднє посилання з індексу пошукових систем не видаляється за такого редиректу, на відміну від 301-го.
304 (Not Modified) – говорить про те, що сторінка не була модифікована від дати попереднього візиту. Застосування таких відповідей дозволяє зменшити навантаження на сервер. Наприклад, пошуковий робот не повторно завантажуватиме таку сторінку, він завантажить тільки заголовки і продовжить сканувати далі. Сервер поверне 304-й код у тому випадку, якщо дата If-Modified-Since або If-None-Match новіша за дати Last-Modified.
400 (Bar Request) – клієнтський запит має помилку у синтаксисі.
401 (Unauthorized) – якщо доступ до сайту відкритий лише для авторизованих користувачів, а ви не авторизовані на сервері, то у відповідь прийде такий код помилки.
403 (Forbidden) – доступ до ресурсу заборонено відвідувачу. Такий код відповіді налаштовується, коли потрібно закрити доступ до певних файлів, папок. Наприклад, такий код поверне сервер при спробі перегляду .htaccess файлу через браузер. Не варто плутати цей код з помилками під час авторизації, коли сервер повертає код 401 або 407.
404 (Not Found) – означає, що запитувана URL-адреса не знайдена на сервері. Подібна сторінка могла бути видалена, відключена, переміщена або її ніколи не існувало. При отриманні такого коду відповіді варто перевірити правильність URL. При СЕО оптимізації дуже важливо налаштувати на сайті віддачу саме такого коду для неіснуючих сторінок, інакше ви отримаєте дублі контенту під час індексування та падіння позицій у видачі. Сторінки, за якими повертається цей код, пошукові системи не індексують. Оскільки цей код помилки може бути отриманий через банальну помилку в URL або неправильно вставлене посилання на іншому сайті, важливо буде правильно оформити сторінку 404, яку побачить користувач, щоб він міг скористатися меню сайту і повернутися на головну сторінку вашого сайту, і продовжити їм користуватися.
Щоб вказати шлях до вашої підготовленої сторінки, яку повинен побачити користувач при цьому коді помилки, потрібно у файлі .htaccess прописати такий рядок:
ErrorDocument 404 /404.php
Шлях до файлу може задаватися як абсолютний, і відносний. У цьому прикладі файл .htaccess і 404.php розташовані в кореневій директорії.
410 (Gone) – аналогічний попередньому коду відповіді сервера, за винятком однієї важливої деталі. Пошуковик, отримуючи код 410, остаточно видалить сторінку з індексу та пошукової видачі, і не буде періодично перевіряти ще раз URL, як у випадку з кодом 404.
414 (Request-URL Too Long) – виникнення такого коду можливо при спробі передати через GET або POST запит надто великий обсяг даних.
451 (Unavailable For Legal Reasons) – доступ до контенту або сайту закрито на підставі судового рішення або на держрівні через порушення авторських прав на розміщені на сайті матеріали.
500 (Internal Server Error) – узагальнений код класу 5**, який з'являється, якщо сервер не в змозі обробити ваш запит або є помилка в налаштуваннях конфігурації сервера. Наприклад, неправильні записи у файлі .htaccess. Цей код повертається, якщо немає інших уточнюючих кодів цього класу.
502 (Bad Gataway) – може бути отриманий, якщо ваш сервер працює як шлюз і отримав некоректну відповідь від батьківського сервера.
503 (Service Unavailable) – такий код свідчить про те, що сервер не доступний з технічних причин. Це може бути атака ддос, коли сервер не справляється з великою кількістю запитів від користувачів, можуть бути технічні збої в роботі обладнання та інше.
504 (Gataway Timeout) – час виконання запиту закінчився. Такий код ви отримаєте, коли сервер виконує роль шлюзу і не отримав відповіді від свого батьківського сервера протягом заданого часового діапазону.
Як бачите, правильність налаштування кодів відіграє важливу роль у СЕО оптимізації сайту, а зрозуміло оформлені для відвідувачів сторінки деяких помилок із класу 4** дадуть відвідувачам можливість продовжити взаємодію з сайтом та збереження трафіку.