HTTP 404

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук
Вигляд сторінки «Помилки 404» у Вікіпедії в браузері Camino

HTTP 404 Not Found (Не знайдено, Помилка 404) — повідомлення про помилку в списку кодів стандартних відповідей HTTP-сервера, яке означає, що сервер не може знайти того, чого вимагає запит від клієнта, хоча контакт з сервером установлено. Здебільшого це повідомлення з'являється у вікні браузера тоді, коли неправильно вказана назва веб-сторінки, яку бажає побачити користувач.

При використанні протоколу HTTP сервер зобов'язаний відповісти на запит на веб-сторінку цифровим кодом і часто ще й текстовим повідомленням.

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

Огляд[ред.ред. код]

При зв'язку по HTTP клієнт потребує відповіді на свій запит серверу. Наприклад, веб-браузер запитує HTML-документ (веб-сторінку) та очікує цифровий код відповіді і, не

завжди обов'язково, повідомлення. У коді 404 перша цифра означає помилку клієнта, наприклад, неправильний URL. Наступні дві цифри пояснюють природу помилки. Така поведінка HTTP аналогічна протоколам, що виникли раніше, наприклад FTP або NNTP.

В протоколі HTTP за кодом 404 слідує зрозуміле для людини «пояснення». Специфікація HTTP рекомендує фразу «Not Found»[1] (не знайдено) і веб-сервери часто генерують веб-сторінку, на якій відображається як код 404 так і фраза «Not Found».

Помилка 404 часто відтворюється, коли сторінку перемістили чи видалили, або не назва файлу в коді та на сервері та збігаються. У першому випадку, краще повернути клієнту код 301 Moved Permanently, що можна налаштувати в конфігурації більшості серверів, або створити перенаправлення на інший URL. У другому випадку, краще повернути код 410 Gone. Однак, оскільки ці два варіанти потребують спеціального налаштування сервера, більшість веб-сайтів не використовують їх.

Помилку 404 не варто плутати з помилкою DNS, яка появляється, коли даний URL посилається на назву сервера, що не існує. Помилка 404 означає, що сам сервер знайдено, але не можливо знайти сторінку, що запитується.

Користувацькі сторінки помилок[ред.ред. код]

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

Однак, не варто відображати користувацькі помилки об'ємом менш, ніж 512 байт, оскільки деякі браузери, наприклад, Internet Explorer чи Google Chrome, замість інформації, що надійшла, відображатимуть свою сторінку помилки. Також у випадку, якщо сторінка не надає іконку (клієнт зазвичай в автоматичному режимі її запитує), а відповідь сервера містить користувацький варіант сторінки, то це призведе до додаткового трафіку та підвищення часу завантаження[2][3].

Окремі компанії роблять «пасхальні яйця» на сторінці 404. Наприклад, «Пежо» зображав на сторінці машину Peugeot 404, а сторіка 404 веб-студії «Протеус» стала відомою за зображення молдовських веб-гастарбайтерів. Відтак студія зникла, а сторінку залишили.

Помилкове використання Помилки 404[ред.ред. код]

Деякі веб-сайти замість «не знайдено» повертають стандартну сторінку з кодом «200 OK», це відомо як м'яка помилка 404. М'який 404 є проблемою для автоматизованих методів аналізу працеспроможності посилання. Деякі пошукові системи, як-от Yahoo, використовують автоматизовані процеси для виявлення м'яких 404[4]. М'який 404 може виникнути унаслідок помилки конфігурації певного серверного програмного забезпечення. Наприклад, на веб-сервері Apache, коли шлях до файлу з помилкою 404 (вказаний в .htaccess) визначається як абсолютний (наприклад, http://example.com/error.html), а не відносний (/error.html)[5].

Деякі проксі-сервери генерують помилку 404, коли не знаходять хост, замість того, щоб повернути код із діапазону 500-х помилок. Це може збити з пантелику програми, які діють на базі отриманих відповідей, адже вони вже не можуть легко розрізнити відсутність веб-сервера та відсутність веб-сторінки на веб-сервері.

У липні 2004 року телекомунікаційний провайдер Великобританії BT Group розгорнув систему блокування контенту Cleanfeed, яка повертає помилку 404 на будь-який запит на інформацію, зміст якої визначений Internet Watch Foundation як потенційно незаконний[6]. Інші провайдери за цієї ж ситуації повертають статус HTTP 403 «Заборонено»[7]. Практика використання хибних помилок 404 як цензурний метод теж були зареєстровані в Тайланді[8] та Тунісі[9]. У Тунісі, де цензура є особливо сильною, громадськість створила персонажа з ім'ям «Аммар 404», який представляє «невидимого цензора»[10].

У культурі[ред.ред. код]

2008 року телекомунікаційний відділ Пост офіс провели дослідження[11] та виявили, що «404» на слензі став синонімом слову «неосвічений» у Великобританії. Сленг-лексикограф Джонатон Грін висловив думку, що «404», як сленгова назва був обумовлений «впливом технологій» в молодіжних компаніях, водночас використання обмежується Лондоном і низкою інших міст[11].

«На честь» помилки 404 названо японську музичну групу 404NOTFOUND, а також російський громадський інтернет-проект підтримки підлітків із гомосексуальними нахилами — Діти-404.

Віджети[ред.ред. код]

Хоч багато сайтів надсилають додаткову інформації в повідомленні про помилку 404, такі як посилання на головну сторінку веб-сайту чи форма пошуку, існують набагато складніші реалізації, які намагаються знайти правильну адресу веб-сторінки, яку запитував користувач[12].

Див. також[ред.ред. код]

Список кодів стану HTTP

Примітки[ред.ред. код]

  1. 6.1.1 Status Code and Reason Phrase. Архів оригіналу за 2012-02-17. Процитовано 2008-06-22. 
  2. Heng, Christopher (7 сентября 2008). Что такое Favicon.ico и как создать иконку для своего вэб-сайта. thesitewizard.com. Архів оригіналу за 2012-02-08. Процитовано 23 февраля 2011. 
  3. Cole, Linda (3 август 1999). Ошибка подлый "favicon.ico не найден". Виртуальная библиотека вэб-разработчика. QuinStreet. Архів оригіналу за 2012-02-17. Процитовано 25 февраля 2011. 
  4. Почему пауки постоянно запрашивают странные URL, которые никогда не существовали на моём сайте?. Yahoo Web Crawler Help page. Архів оригіналу за 2012-02-17. Процитовано 4 октября 2009. 
  5. Прощание с мягким 404s. Google Official Blog. Архів оригіналу за 2012-02-17. Процитовано 20 сентября 2008. 
  6. LINX Public Affairs » Cleanfeed: факты. Publicaffairs.linx.net. 10 сентября 2004. Процитовано 6 март 2011. 
  7. «DEMON — Error 403»
  8. Sambandaraksa, Don (18 февраля 2009). The old fake '404 Not Found' routine. Бангкок Пост. Процитовано 12 сентября 2010. 
  9. Noman, Helmi (12 сентября 2008). Тунисский журналист подал в суд на правительство за блокировку Facebook, за нанесённый ущерб при использовании ошибки 404 вместо 403. Open Net Initiative. Архів оригіналу за 2012-02-17. Процитовано 21 ноября 2010. 
  10. Движение против цензуры в Тунисе: творчество, мужество и надежда!. Global Voices Advocacy. 27 мая 2010. Архів оригіналу за 2012-02-17. Процитовано 28 августа 2010. 
  11. а б Не быть 404, знать техносленг. BBC News Online. 10 декабря 2008. Процитовано 13 декабря 2008. 
  12. Swenson, Sahala (19 августа 2008). Сделайте вашу страницу 404 более полезной. Official Google Webmaster Central Blog. Google, Inc. Архів оригіналу за 2012-02-17. Процитовано 28 августа 2009. 

Посилання[ред.ред. код]