Коди помилок сервера, їх виправлення
Що таке коди відповідей і помилок сервера?
Дані коди (їх ще називають http-статуси) надсилаються веб-сервером хостингу у відповідь на запит користувача, який йде через його браузер. Говорячи простіше, користувач хоче зайти на певний сайт і клацає посилання в браузері. Браузер надсилає запит на сервер хостинг-провайдера, а той йому в відповідь посилає код, виходячи з якого браузер робить певну дію (показує сайт \ показує помилку \ показує не те, що запросив користувач).

Важливо! Не можна вважати всі відповіді сервера помилками, далі показано про що вони повідомляють:
- Коди 100-199 - Запит браузера прийнятий, і обробляється
- Коди 200-299 - Запит оброблений, і браузеру відправили то, що він хотів
- Коди 300-399 - Сервер відправить користувачеві не те, що він хотів
- Коди 400-499 - Помилка на стороні користувача
- Коди 500-599 - Помилка на стороні сервера
коди 100-199
100 Continue
Повідомляє про те, що сервер прийняв першу частину запиту, і можна продовжувати посилати інші частини.
101 Switching Protocols
Сервер (на вимогу браузера) перемкнув протоколи. Це завдання передається серверу в заголовку Upgrade.
коди 200-299
Сервер обробив запит браузера (користувача) і передав йому те, що він хотів. А користувач повинен побачити сайт або файл, який запитував.
201 Created
Код повідомляє, що сервером створений новий ідентифікатор URI. У відповіді сервера (заголовок Location) можна знайти місце куди саме були поміщені створені дані.
202 Accepted
Сервер прийняв запит, але буде обробляти його пізніше. До того ж, в кінцевому рахунку не можна бути впевненим на 100%, що сервер обробить Ваш запит. Шукайте детальну інформацію про причини в повідомленні, яке приходить разом з кодом помилки.
203 Non-Authoritative Information
Сервер передав запитувану інформацію, але повідомляє про те, що взяв її на іншому сервері або ж з власної копії.
204 No Content
Цей код показує браузеру, що його запит прийнятий, але відповідь на нього порожній, і браузеру не потрібно нічого робити. Найчастіше це відбувається, коли користувач клацає по порожньому місці сторінки або по картинці (без посилання).
205 Reset Content
Повідомляє про те, що потрібно очистити одну або кілька форм, в які могли бути заповнені дані. Найчастіше використовується для очищення форм повідомлень або будь-яких інших форм введення інформації.
206 Partial Content
Сервер прийняв запит і повернув тільки певну частину даних, які були запитані. Яку саме частину потрібно повернути сервера, вказується в заголовку запиту користувача Range. А сервер вказує це у своїй відповіді (дивіться заголовок Content-Range).
коди 300-399
300 Multiple Choices
301 Moved Permanently
Користувач запросив об'єкт (сторінку), який вже не використовується сервером. А сервер в свою чергу перенаправляє користувача на іншу сторінку, яка і відображається в браузері. Важливо розуміти, що пошуковий робот перестане індексувати вихідну сторінку, і замість неї буде індексувати ту, на яку йде перенаправлення. Цей спосіб найчастіше використовується для редиректу - перенаправлення з однієї сторінки на іншу. Для цього в файлі .htaccess прописуємо:
302 Moved Temporarily
303 See Other
304 Not Modified
Цей код показує, що сторінка не змінювалася з певного часу і браузер може використовувати стару версію (яка швидше за все збережена в його пам'яті). Це дозволяє не завантажувати заново сторінки, які не піддавалися зміни, що прискорює час їх завантаження. Також це дозволяє прискорити індексацію сайту пошуковими роботами, скоротити трафік і навантаження на сервер.
305 Use Proxy
307 Temporary Redirect
Код майже ідентичний 302 Moved Temporarily, але більш валідний.
коди 400-499
400 Bad Request
Сервер не зрозумів запит браузера користувача через синтаксичну помилку.
401 Unauthorized
402 Payment Required
Даний код дуже рідко використовується, і означає скоріше проблеми з конфігурацією сервера, ніж проблеми з оплатою послуг.
403 Forbidden
Помилка повідомляє про те, що доступ до даної сторінки заборонений, або ж сервер не може його надати.
404 Not Found
405 Method Not Allowed
У запиті (рядок Request-Line) вказаний такий метод, який не підтримує сервером. Часто це відбувається при відправці POST-даних на неправильну сторінку. Відповідно, щоб вирішити цю проблему перевірте правильність зазначеного шляху (атрибут action).
406 Not Acceptable
Користувач намагається подивитися документ, який існує на сервері, але має кодування \ мову \ формат, які не підтримуються у користувача. У підсумку потрібно шукати причину в заголовках Content-Language, Content-Encoding або Content-Type.
407 Proxy Authentication Required
Повідомляє про те, що запит proxy-сервера повинен бути санкціонований (заголовок Proxy-Authenticate).
408 Request Time-out
Нема передав повний запит протягом якогось часу (задається на сервері). І через це сервер розірвав з'єднання з користувачем, передавши йому помилку 408. В даному випадку потрібно перевірити настройки браузера і брандмауера, тому що в більшості випадків саме вони є коренем проблеми.
409 Conflict
Запити, який посилає користувач конфліктує з сервером або іншим запитом. Дана проблема має безліч причин, описувати які не має сенсу. Для її вирішення краще відразу звернутися до хостинг-провайдеру, щоб заощадити час.
Користувач намагається подивитися об'єкт (сторінку сайту), який не існує. Але раніше він існував, і був назавжди видалено з сервера.
411 Length Required
Запит не буде прийнятий сервером, поки не визначиться заголовок Content-Length.
413 Request Entity Too Large
Запит переданий на сервер дуже великий, тому сервер його не може обробити. Всі подробиці потрібно дивитися в зміст відповіді, тому що там і криється причина цієї помилки.
414 Request URL Too Long
URL який запитує користувач занадто довгий, тому сервер не може його обробити. Для вирішення проблеми перевірте правильність URL і його довжину, а також зверніть увагу на атрибут Request-URI.
415 Unsupported Media Type
Сервер не підтримує формат запиту користувача, тому не може його обробити.
416 Requested Range Not Satisfiable
Сервер не зможе виконати запит, поки значення поля Range не стане коректним (задається в байтах).
417 Expectation Failed
Зазвичай ця помилка виникає через те, що значення поля запиту Expect є некоректним.
422 Unprocessable Entity
Одна або кілька частин не можуть бути оброблені сервером.
423 Locked
Запитуваний об'єкт (сторінка сайту) заблокований.
424 Failed Dependency
Один з ресурсів (залежних) недоступний або блокований, тому сервер не може дати доступ до нього.
426 Upgrade Required
Сервер прийняв запит по стандартному з'єднанню, але запитує SSL-з'єднання, яка не підтримується клієнтом. В результаті сервер видає помилку 426.
коди 500-599
500 Internal Server Error
Даний код повідомляє, що на сервері сталася внутрішня непередбачена помилка або аварійний відмова.
501 Not Implemented
Система не може зрозуміти запит, який йому передали. Причин цієї помилки безліч, тому відразу звертайтеся в службу підтримки хостингу.
502 Bad Gateway
503 Service Unavailable
Ця помилка означає, що сервер тимчасово перестав працювати. Як правило це відбувається якщо він знаходиться в стані перезавантаження або відключений на тимчасове обслуговування. Якщо разом з повідомленням про помилку прийшов параметр Retry-After, то його значення і буде тим часом, через яке сервер повинен відновити роботу.
504 Gateway Time-out
Сервер (який прийняв запит від користувача) може перебувати в ланцюжку серверів і передає запити до кінцевого сервера, який їх обробляє. У випадку з помилкою 504 перший сервер не отримав відповідь від висхідного сервера і відправив Вам повідомлення про це.
505 HTTP Version not supported
Користувач відправив серверу запит з версією http-протоколу, який не підтримується.
507 Insufficient Storage
Місця на диску недостатньо, і сервер не зрозумiв запит користувача. Або звільніть місце самостійно, або зверніться в службу підтримки, тому що у випадку з віртуальним хостингом (або VPS) на Вашому сервері знаходяться ще і сайти інших користувачів, видалити які Ви не зможете.
510 Not Extended
Розширення запитуваної файлу не підтримується або відсутній.
Чи не знайшли відповідь на своє питання?