HTTP статуси: коди помилок

admin Різні статті

HTTP статуси: коди помилок

HTTP статуси: коди помилок. Ви напевно хоча б раз у житті стикалися з такою ситуацією: ви вводите адресу сайту або переходите за посиланням, а у відповідь замість бажаної веб-сторінки отримуєте помилку 404: сторінка не знайдена. Але в процесі серфінгу в Інтернеті вам можуть зустрітися і інші HTTP статуси, про них і піде мова в цій цікавій статті.

Коди помилок HTTP

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

HTTP статуси називають ще помилками HTTP. Це вірно лише частково, тому що є п'ять груп кодів стану HTTP, і з них з помилками з'єднання з сервером пов'язано лише дві групи. HTTP статуси, що починаються з цифри 4, свідчать про помилку з боку клієнта (тобто з вашого боку). А якщо перша цифра в коді статусу - 5, то проблема на стороні сервера, і ви до неї непричетні.

HTTP статуси 4хх зазвичай свідчать про те, що у вашому запиті була яка-небудь помилка, що перешкодила серверу його обробити. Наприклад, код 400 Bad Request означає невірний запит. Якщо синтаксис запиту некоректний, сервер не зможе його розібрати.

Помилка 401 Unauthorized свідчить про неавторизований запит. Доступ до деяких документів може надаватися тільки при введенні логіна або пароля (або ж для доступу ви повинні бути зареєстрованим користувачем). Якщо ви не зареєстровані або не знаєте логін/пароль, сервер поверне вам цю помилку. Якщо аутентифікація відбувається на проксі-сервері, то код помилки буде 407 Proxy Authentication Required - Необхідна авторизація проксі. Також можете почитати про Типи файлових систем.

Часто зустрічається помилка 403 Forbidden (Доступ заборонений). Це означає, що сервер ваш запит зрозумів, але доступ вам не дасть. Зазвичай це відбувається, якщо ви хочете зайти на сторінку, доступ до якої закрито для звичайних користувачів (скажімо, адміністративний розділ або файли. htaccess). Адміністратор сервера закриває доступ до таких розділів за допомогою спеціальних конфігураційних файлів. Також сервер може повертати цю помилку при занадто великій кількості звернень з одної IP-адреси. Спробуйте зайти через проксі або перепідключитися до Інтернету, якщо у вас динамічний IP.

Але все-таки самий відомий код статусу HTTP - 404 Not Found (Сторінку не знайдено). Це означає, що ви або неправильно набрали адресу сторінки, або сторінка, яка колись знаходилася за цією адресою, була видалена з сервера. Досить часто власники сайтів креативно підходять до оформлення сторінки 404. Робиться це в основному для того, щоб користувач не йшов з сайту, зіткнувшись з помилкою. Зазвичай на сторінці помилки 404 є посилання на головну сторінку сайту, щоб користувач міг повернутися туди замість того, щоб закрити вкладку або перейти на інший сайт.

Є й інші HHTP статуси, які свідчать про помилку клієнта (з 405 по 417, з 422 по 424, 426 і 402 - останній статус поки не використовується). Причини помилок різні, наприклад, помилка 413 означає занадто великий розмір запиту, помилка 414 - занадто довгий URL і т.п. Є навіть жартівливий код статусу HTTP 418 I'm a teapot (Я - чайник), введений в як першоквітневий жарт від Інженерної ради Інтернету (IETF).

Якщо ж запит не може бути оброблений з вини сервера, вам повернеться помилка з кодом 5хх. Тут ви зробити нічого не можете, хіба що спробувати зайти на сторінку через деякий час. Часто користувачі можуть зіткнутися з помилкою 502 Bad Gateway (Поганий шлюз). Це означає, що сервер, що виконує роль шлюзу або проксі, отримав повідомлення про те, що проміжна операція була виконана невдало. Якщо сервер, що виконує роль шлюзу або проксі, взагалі не дочекався відповіді від вищого сервера, щоб завершити поточний запит, буде повернута помилка 504 Gateway Timeout (Шлюз не відповідає).

Якщо сервер з технічних причин (перевантаження, технічне обслуговування) не може обробляти запити, він поверне код 503 Service Unavailable, що дає зрозуміти, що сервіс недоступний. Якщо хостинг-провайдер ввів для сайту обмеження на споживання трафіку, і це обмеження було перевищено, повернеться помилка 509 Bandwidth Limit Exceeded, що говорить про те, що пропускна ширина каналу була вичерпана.

Рідше ви можете зіткнутися з помилками 501 (Не реалізовано), 505 (Не підтримується версія HTTP), 506 (Варіант теж узгоджений - експериментальний код статусу), 507 (Переповнення сховища) і 510 (Не розширено). При будь-якій іншій внутрішньій помилці сервера повертається код 500 Internal Server Error.

Якщо ви знаєте основні HTTP статуси, вас не будуть лякати незрозумілі повідомлення, що з'являються замість потрібної веб-сторінки. Вони допоможуть відповісти на питання "Хто винен?" (Клієнт або сервер), а іноді навіть і на питання "Що робити?"