Это же полный пиздец! Окончательная его форма. А вы "мемчики" постите ради лайков?
Вы ёбу дали? Радуйтесь, что вас это не коснулось и помалкивайте.
В интернете - все смелые.
Но такой интернет - помойка.
От вашей реакции трясёт ещё больше, чем от того, что с этими людьми делали в этих местах. Там работали нелюди. А вы, кто пытается на этом хайпануть смехуёчками - ни разу не лучше.
Ах да, забыл. У вас на осознание мной написанного мозгов не хватит.
Авторская иллюстрация к истории о бургере за 404 рублей (не фотография меню).
Недавно наткнулся на весьма интересное предложение в русифицированном Макдональдсе: бургер за 404 рубля.
Казалось бы, обычная цена. Но после 4 лет бакалавриата на инженера-программиста и восьми лет преподавания информатики некоторые цифры перестают быть просто цифрами. Смотришь на меню, видишь 404 и автоматически думаешь: «А бургер-то существует? Или вместо булочки я получу одноименный ответ?»
И тут я задумался: а почему, собственно, именно 404? Почему интернет не сообщает «123 — страница пропала» или «666 — вы зашли не туда»? Кто придумал эти цифры? И правда ли, что в CERN была загадочная комната № 404?
Решил разобраться. Оказалось, история интереснее, чем кажется.
Картинка для привлечения внимания :)
Интернет, в котором ещё не существовало 404
На дворе 1990 год. В CERN Тим Бернерс-Ли работает над системой обмена документами через гипертекстовые ссылки. Интернет уже существует, но Всемирная паутина только зарождается.
В раннем HTTP/0.9 браузер мог отправить запрос GET /index.html, а сервер — вернуть содержимое документа. Без привычной строки состояния и кодов 200 OK, 404 Not Found или 500 Internal Server Error.
Получается забавная ситуация: Всемирная паутина уже работала, а её самой знаменитой ошибки ещё не существовало. Но веб рос, и браузеру потребовалось понимать, что случилось: документ найден, переехал, закрыт для доступа или отсутствует. Так появились стандартизированные статусы.
Почему именно 404?
Когда браузер запрашивает страницу, сервер возвращает ответ с числовым статусом. Коды объединены в пять семейств: 1xx — информационные ответы; 2xx — успех; 3xx — перенаправление или дополнительные действия; 4xx — проблема, связанная с запросом; 5xx — ошибка на стороне сервера.
Четыре наиболее знакомых семейства HTTP-статусов. Существуют также информационные коды 1xx.
200 OK означает успешную обработку; 301 Moved Permanently — постоянное перенаправление; 403 Forbidden — отказ в доступе. 404 Not Found означает, что сервер не нашёл представление ресурса по указанному адресу либо не хочет раскрывать его существование.
Первая четвёрка обозначает семейство 4xx. Остальные цифры — конкретный статус внутри группы. А вот достоверного объяснения, почему отсутствующему ресурсу присвоили именно 404, а не иной свободный номер, нет.
Загадочная комната № 404. Детектив из CERN
А теперь давайте немного поиграем в интернет-детективов.
Представьте начало 1990-х годов. Швейцария, Европейская организация по ядерным исследованиям — CERN. Учёные работают над технологиями, которые впоследствии изменят весь мир.
И где-то среди многочисленных лабораторий, кабинетов и коридоров якобы существует загадочная комната № 404.
По популярной интернет-легенде, именно здесь обрабатывали запросы на документы. Если нужную информацию не удавалось найти, пользователя отправляли в эту самую комнату.
Со временем номер помещения будто бы превратился в обозначение отсутствующей страницы.
Красиво, правда?
Мне особенно нравится представлять бедного сотрудника CERN, который спокойно пришёл на работу, налил кофе, а спустя несколько десятилетий обнаружил, что номер его кабинета стал всемирным символом неудачи.
Есть, правда, одна проблема.
Никаких надёжных подтверждений этой истории нет.
Более того, Робер Кайо, один из пионеров Всемирной паутины, опровергал версию о происхождении кода 404 от номера комнаты CERN.
И здесь хочется задать вполне закономерный вопрос: а почему мы вообще так охотно верим в подобные истории?
Мне кажется, потому что человеку гораздо интереснее услышать рассказ о таинственной комнате, чем объяснение устройства сетевого протокола.
Легенда превращает безликий технический код в историю с героями, местом действия и неожиданной развязкой.
А реальность куда прозаичнее.
404 — это один из статусов HTTP, системы, с помощью которой браузеры и серверы обмениваются информацией.
И хотя мы понимаем логику классификации этих кодов, достоверного свидетельства о том, почему отсутствующему ресурсу достался именно номер 404, а не другой свободный номер, у нас нет.
Получается забавная ситуация.
Ошибка, сообщающая о том, что информация не найдена, сама обзавелась историей, для которой не нашлось подтверждений.
Когда появилась первая 404? Ищем следы в документах
Хорошо, с комнатой разобрались.
Но если её история оказалась легендой, то когда же на самом деле появилась ошибка 404?
Для ответа придётся заглянуть в документы, которые большинство обычных пользователей интернета, скорее всего, никогда не открывали.
Речь о RFC — Request for Comments.
Несмотря на название, это не просто сборники комментариев. В таких документах описываются технические решения, протоколы и стандарты, на которых работает интернет.
И вот мы открываем RFC 1945, опубликованный в мае 1996 года.
Документ посвящён HTTP/1.0.
Среди авторов — Тим Бернерс-Ли, Рой Филдинг и Хенрик Фристик Нильсен.
Листаем спецификацию и обнаруживаем знакомое обозначение: 404 Not Found.
Вот она! Нашлась!
Казалось бы, расследование закончено: май 1996 года, ошибка появилась.
Но не торопитесь.
Есть важная деталь: RFC 1945 описывал уже существовавшую практику использования HTTP.
То есть к моменту публикации документа код 404 уже применялся.
Получается, май 1996 года — это не обязательно день рождения ошибки, а дата публикации одного из документов, в котором она была зафиксирована.
Примерно как с историческим событием: если мы нашли его описание в газете, это ещё не означает, что событие произошло в день выхода номера.
А теперь перенесёмся в январь 1997 года.
Появляется RFC 2068, посвящённый HTTP/1.1.
И среди многочисленных статусов мы встречаем ещё один интересный код: "410 Gone."
Стоп. Но ведь у нас уже есть 404!
Зачем интернету понадобились сразу два способа сообщить, что страницы нет?
Оказывается, не все пропавшие страницы одинаково пропавшие.
404 или 410? Когда страница исчезла, но есть нюанс
Представьте, что вы пришли в библиотеку.
Подходите к библиотекарю и спрашиваете:
— Здравствуйте! А у вас есть книга, которую я ищу?
Библиотекарь проверяет каталог, пожимает плечами и отвечает:
— Не могу найти.
Вот вам 404 Not Found.
Библиотекарь не утверждает, что книги никогда не существовало. Не говорит, что её навсегда убрали. Он просто не может предоставить её по вашему запросу.
А теперь другая ситуация.
Вы спрашиваете о книге, а библиотекарь отвечает:
— Да, раньше она была в нашем фонде. Но её окончательно вывели из обращения. Больше у нас её не будет. Это уже ближе к 410 Gone. Разница кажется небольшой, но для устройства интернета она довольно существенна.
404 Not Found означает, что сервер не нашёл представление запрошенного ресурса. При этом код сам по себе не сообщает, временно или постоянно оно отсутствует.
410 Gone говорит о том, что ресурс больше недоступен и такое положение, вероятно, постоянно.
Но есть нюанс.
Представьте, что вы удалили со своего сайта старую статью.
Обязаны ли вы теперь сообщать всем посетителям именно 410?
Нет.
Сервер вполне может продолжать возвращать обычный 404.
Поэтому 404 — это не приговор странице. Она могла исчезнуть навсегда, временно стать недоступной или оказаться по другому адресу.
А иногда пользователь просто ошибся при вводе ссылки.
Кстати, есть и ещё одна интересная деталь: сервер может вернуть 404 даже в ситуации, когда ресурс существует, но раскрывать его наличие нежелательно.
Да-да, иногда Not Found означает не столько «ничего нет», сколько «мы не собираемся подтверждать, что здесь что-то есть».
Так что не стоит воспринимать эти три цифры слишком буквально.
Впрочем, самое интересное впереди.
Потому что сейчас я расскажу вещь, которая на первый взгляд звучит совершенно нелогично.
Когда вы видите ошибку 404, это может означать, что значительная часть системы сработала совершенно правильно.
Самое неожиданное: 404 означает, что кое-что сработало
Когда мы видим слово «ошибка», кажется, что всё сломалось. Но браузер мог успешно обратиться к серверу, а сервер — обработать запрос и ответить: HTTP/1.1 404 Not Found.
Упрощённая схема: запрос дошёл до сервера, а сервер вернул статус отсутствующего ресурса.
404 — не отсутствие ответа. Это ответ об отсутствии запрошенного ресурса. Конечно, статус может вернуть промежуточный сервер, а причиной может оказаться неправильная маршрутизация. Но сам по себе 404 не означает потерю соединения.
Почему 404 иногда выглядит как произведение искусства?
Давайте на секунду представим себя обычным пользователем интернета. Вы нашли интересную статью. Возможно, искали её полчаса. Наконец-то переходите по ссылке, предвкушая ответ на свой вопрос, и тут…
Всё. Приехали.
Никакой статьи, никакой информации. Только три цифры, которые совершенно не интересуются вашими потраченными нервами и временем. Для разработчика 404 — обычный HTTP-статус. Сервер честно сообщил, что не нашёл запрошенный ресурс. А вот для пользователя это маленькая трагедия. Особенно если нужная информация была действительно важной. И в какой-то момент создатели сайтов поняли, что из нетипичной картинки можно извлечь сразу 2 положительных эффекта:
- Во-первых - это весело
- Во-вторых - даже имея ошибку, можно сделать себе самый настоящий "черный пиар", зазывая пользователей посмотреть на креатив при возникновении ошибки
Причём фантазия дизайнеров иногда заходила настолько далеко, что страница ошибки оказывалась интереснее самого сайта.
Так техническая ошибка постепенно превратилась в площадку для творчества.
Привет мелииниалам :)
Такую ситуацию называют soft 404.
Так почему же 404 стала легендой?
Это одна из немногих технических ошибок, знакомых даже людям, далёким от программирования. Чтобы встретить 404, не нужно писать код — достаточно открыть старую ссылку. Три цифры стали символом отсутствия чего-либо, поселились в мемах, названиях проектов и даже меню ресторанов.
И вот человек, восемь лет преподававший информатику, вместо выбора ужина начинает изучать историю HTTP.
А какую самую необычную страницу 404 встречали вы? Делитесь в комментариях — соберём небольшую коллекцию интернет-находок.
...гарантировало бы, что там не будут приняты меры по принуждению Украины к капитуляции. Вместо этого там гарантированно принудят Украину к трехстороннему принятию за щеку.