Я вот только что узнал, что в состав протокола HTTP был официально
включён код ошибки 451, означающий блокировку страницы по требованию правообладателя или государства. Об этом у себя в блоге сообщил председатель Инженерного совета интернета (IEFT) Марк Ноттингем.
Код 451 был официально утверждён группой по выработке инженерного регламента интернета (IESG), и отныне будет использоваться в тех случаях, когда страница не может быть отображена из-за требований владельца авторских прав или запрету правительства страны, в которой находится пользователь. Это чем-то напоминает предупреждение на Youtube, где некоторые ролики не воспроизводятся в определённой стране или регионе.
Ноттингем отметил, что стандартизация позволит более точно определить, почему недоступна страница - из-за блокировки или по причине проблем на сервере.
Обычно коды не относятся к какому-либо политическому явлению, но здесь, похоже, было сделано исключение. 451 - это отсылка к фантастическому роману Рэя Брэдбери «451 градус по Фаренгейту». В нём описывалось общество, в котором сжигают книги, способные заставить задуматься. Похоже?
Вы наверное знаете, что 451 градус по шкале Фаренгейта - температура спонтанного воспламенения бумаги. Я и сам так считал долгое время, но ведь это заблуждение. Рэя Брэдбери в свое время ввели в заблуждение и вот почему …
451 градус по Фаренгейту. Это название знаменитой книги Рэя Брэдбери. На языке оригинала звучит так: ‘Fahrenheit 451: The Temperature at which Book Paper Catches Fire, and Burns’.
Сколько будет 451 °F по Цельсию? Примерно 232,8 °С. Не кажется ли вам, что это низковато для воспламенения. На свой страх и риск можете взять кусок газеты и положить в духовку, где при температуре 250 °С запекается рыба с картошкой. Наблюдайте сквозь стекло духовки за эффектом. Нет никакого эффекта. Бумага лежит и даже не обугливается. В чем же дело?
Если провести поиск в Интернете, то окажется, что с легкой руки Брэдбери даже популярные американские образовательные сайты, отвечая на вопросы любознательных посетителей о температуре возгорания бумаги, приводят температуру 451 °F. Обычно, однако, дается разъяснение, что это зависит от типа бумаги, от пропитки и т.д. Данная цифра, мол, дана только для книг и газет. Однако все намного проще.
На самом деле температура спонтанного воспламенения бумаги - 451 градус по ЦЕЛЬСИЮ (~843 °F). Брэдбери находился в Европе, когда писал этот роман и задал вопрос о бумаге пожарному. Тот ему ответил - 451 градус, куду американец, по привычке, докинул фаренгейты.
Вот интересный сайт «How books got their titles?» и там, на странице
Fahrenheit 451 by Ray Bradbury, посвященной знаменитой книге Брэдбери, высказывается мнение, что писатель в заголовке книги перепутал градусы Цельсия и градусы Фаренгейта. Температура возгорания бумаги составляет 450 °С! Это примерно 843 °F. Ссылка дана на уважаемый справочник «Handbook of Physical Testing of Paper By Jens Borch (2001)», в котором черным по белому написано «The ignition temperature of paper is about 450 degrees C, but it is somewhat dependent upon the paper quality. The ignition temperature is 450 degrees C for rayon fibers, 475 degrees C for cotton, and 550 degrees C for flame-resistant cotton (treated with N-methyl-dimethyl-phosphonopropionamide).» (Температура возгорания бумаги составляет около 450 °С, но немного зависит от качества бумаги. 450 °С - для вискозы, 475 °С - для хлопка, 550 °С для огнеупорного пропитанного хлопка).
Вот так, путаница в температурных шкалах приводит к ошибкам в литературе. А ошибка в литературе закрепляется образовательной системой.
Отметим, что коды HTTP-сервера используются для сигнализации о проблемах. Всем известный код 404 означает, что информация не найдена на сервере, а 502 - превышение времени ожидания ответа сервера.
и чуть подробнее уж про ошибки:
Код состояния HTTP (англ. HTTP status code) является частью первой строки ответа сервера. Он представляет из себя целое число из трех арабских цифр. Первая цифра указывает на класс состояния. За кодом ответа обычно следует отделённая пробелом поясняющая фраза на английском языке, которая разъясняет человеку причину именно такого ответа. Пример:
403 Access allowed only for registered users
Клиент узнаёт по коду ответа о результатах его запроса и определяет, какие действия ему предпринимать дальше. Набор кодов состояния является стандартом, и все они описаны в соответствующих документах RFC. Введение новых кодов должно производится только после согласования с IETF. Клиент может не знать все коды состояния, но он обязан отреагировать в соответствии с классом кода.
В настоящее время выделено пять классов кодов состояния:
1xx: Informational (Информационный) - запрос получен и понят, а обработка продолжается.
2xx: Success (Успешно) - запрос был успешно получен, понят и обработан.
3xx: Redirection (Перенаправление) - для выполнения запроса должны быть предприняты дальнейшие действия.
4xx: Client Error (Ошибка клиента) - запрос имеет плохой синтаксис или не может быть выполнен.
5xx: Server Error (Ошибка сервера) - сервер не в состоянии выполнить допустимый запрос.
Ниже представлены коды ответа из реестра кодов состояния IANA.
Коды 3xx (перенаправление)
Перечень кодов статуса HTTP, использующихся при перенаправлении запроса (коды 3xx)
300 Множественный выбор
Затребованный URL обозначает более одного ресурса, и робот не смог однозначно определить, к какой странице URL относится (получен код 300 Multiple Choices).
Исправьте заголовки или укажите ресурс правильно, и тогда робот сможет проиндексировать страницу.
301 Ресурс перемещен навсегда
Документ уже не используется сервером, а ссылка перенаправляет на другую страницу (получен код 301 Moved Permanently).
Так как пользователи не смогут увидеть подобные документы, показывать их в поиске не имеет смысла, и робот их не индексирует. Однако робот обязательно проиндексирует страницу, на которую установлено перенаправление.
302 Ресурс временно перемещен
Запрошенный ресурс временно находится под другим адресом (получен код 302 Moved Temporarily).
Так как пользователи не смогут увидеть подобные документы, показывать их в поиске не имеет смысла, и робот их не индексирует. Однако робот обязательно проиндексирует страницу, на которую установлено перенаправление.
303 Смотрите другой ресурс
Запрошенный ресурс находится под другим адресом и его следует запрашивать, используя метод GET (получен код 303 See Other). Если вы хотите, чтобы указанная страница находилась в поиске, она должна отвечать кодом 200.
304 Ресурс не изменялся
Получен код 304 Not Modified. Если страница не изменилась с момента последнего обращения робота, рекомендуется выдавать этот код. Это ускорит индексацию и уменьшит трафик.
305 Следует использовать прокси
Доступ к затребованному ресурсу может осуществляться только через прокси-сервер, указанный в заголовке Location (получен код 305 Use Proxy).
307 Временное перенаправление
Затребованный ресурс был временно переведен на другой адрес, который необходимо прописать в Location (получен код 307 Temporary Redirect).
Коды 4xx (ошибка клиента)
Содержит перечень кодов статуса HTTP, использующихся для обозначения возможных ошибок в клиентском запросе (коды 4xx).
400 Неверный запрос
Запрос не может быть понят сервером из-за некорректного синтаксиса (получен код 400 Bad Request).
401 Неавторизованный запрос
Для доступа к документу необходимо вводить пароль или быть зарегистрированным пользователем (получен код 401 Unauthorized).
402 Необходима оплата за запрос
Внутренняя ошибка или ошибка конфигурации сервера (получен код 402 Payment Required).
403 Доступ к ресурсу запрещен
Доступ к документу запрещен (получен код 403 Forbidden). Если вы хотите, чтобы страница индексировалась, необходимо разрешить доступ к ней.
404 Ресурс не найден
Документ не существует (получен код 404 Not Found). Если вы удалили какой-то раздел сайта, можно с помощью robots.txt запретить роботу обращаться к нему. Если такой страницы на сайте никогда не существовало, игнорируйте эту ошибку, возможно, кто-то поставил некорректную ссылку на ваш сайт.
405 Недопустимый метод
Метод, определенный в строке запроса (Request-Line), не дозволено применять для указанного ресурса, поэтому робот не смог его проиндексировать (получен код 405 Method Not Allowed).
406 Неприемлемый запрос
Нужный документ существует, но не в том формате (язык или кодировка не поддерживаются роботом). Получен код 406 Not Acceptable.
407 Требуется идентификация прокси, файервола
Необходима регистрация на прокси-сервере (получен код 407 Proxy Authentication Required).
408 Время запроса истекло
Сайт не передал полный запрос в течение установленного времени и робот разорвал соединение (получен код 408 Request Timeout).
409 Конфликт
Запрос конфликтует с другим запросом или с конфигурацией сервера (получен код 409 Conflict).
410 Ресурс недоступен
Затребованный ресурс был окончательно удален с сайта (получен код 410 Gone).
411 Необходимо указать длину
Сервер отказывается принимать запрос без определенного заголовка Content-Length (получен код 411 Length Required). Поправьте заголовки на своем сервере;- тогда в следующий раз робот сможет проиндексировать страницу.
412 Сбой при обработке предварительного условия
При проверке на сервере одного или более полей заголовка запроса обнаружено несоответствие (сбой или ошибка при обработке предварительного условия). Получен код 412 Precondition Failed.
413 Тело запроса превышает допустимый размер
Сервер отказывается обрабатывать запрос потому, что размер запроса больше того, что может обработать сервер (получен код 413 Request Entity Too Large).
414 Недопустимая длина URI запроса
Сервер отказывается обслуживать запрос, потому что запрашиваемый роботом URI (Request-URI) длиннее, чем сервер может интерпретировать (получен код 414 Request-URI Too Long).
415 Неподдерживаемый MIME тип
Сервер отказывается обрабатывать запрос, потому что тело запроса имеет неподдерживаемый формат (получен код 415 Unsupported Media Type).
416 Диапазон не может быть обработан
Сервер отказывается обрабатывать запрос, потому что значение поля Range в заголовке запроса указывает на недопустимый диапазон байтов (получен код 416 Requested Range Not Satisfiable).
417 Сбой при ожидании
Сервер отказывается обрабатывать запрос, потому что значение поля Expect в заголовке запроса не соответствует ожиданиям (получен код 417 Expectation Failed).
422 Необрабатываемый элемент
Сервер не в состоянии обработать один (или более) элемент запроса (получен код 422 Unprocessable Entity).
423 Заблокировано
Сервер отказывается обработать запрос, так как один из требуемых ресурсов заблокирован (получен код 423 Locked).
424 Неверная зависимость
Сервер отказывается обработать запрос, так как один из зависимых ресурсов заблокирован (получен код 424 Failed Dependency).
426 Требуется обновление
Сервер запросил апгрейд соединения до SSL, но SSL не поддерживается клиентом (получен код 426 Upgrade Required).
Коды 5xx (ошибка сервера)
Перечень кодов статуса HTTP, использующихся для обозначения возможных ошибок сервера (коды 5xx)
500 Внутренняя ошибка сервера
Сервер столкнулся с непредвиденным условием, которое не позволяет ему выполнить запрос (получен код 500 Internal Server Error).
501 Метод не поддерживается
Сервер не поддерживает функциональные возможности, требуемые для выполнения запроса (получен код 501 Not Implemented). Этот ответ соответствует состоянию, когда сервер не распознает метод запроса и не способен обеспечить его для любого ресурса.
502 Ошибка шлюза
Сервер, действуя в качестве шлюза или прокси-сервера, получил недопустимый ответ от следующего сервера в цепочке запросов, к которому обратился при попытке выполнить запрос (получен код 502 Bad Gateway).
503 Служба недоступна
Возникла ошибка из-за временной перегрузки или отключения на техническое обслуживание сервера (получен код 503 Service Unavailable).
504 Время прохождения через межсетевой шлюз истекло
Сервер, при работе в качестве внешнего шлюза или прокси-сервера, своевременно не получил отклик от вышестоящего сервера, к которому он обратился, пытаясь выполнить запрос (получен код 504 Gateway Timeout).
505 Версия НТТР не поддерживается
Сервер не поддерживает или отказывается поддерживать версию HTTP-протокола, которая используется в сообщении запроса робота (получен код 505 HTTP Version Not Supported).
507 Недостаточно места
Сервер не может обработать запрос из-за недостатка места на диске (получен код 507 Insufficient Storage).
510 Отсутствуют расширения
Сервер не может обработать запрос из-за того, что запрашиваемое расширение не поддерживается (получен код 510 Not Extended).
Вот еще некоторые интересные вопросы и ответы на них: вот например как правильно называть
Каспийское море или озеро?, а вот
Почему американские штаты так называются? Вы точно уверены, что
ежи едят яблоки с грибами? и
Почему в России - царь, а в Европе - король?. Вот еще интересный вопрос -
Зачем во время траура приспускают флаги ? и
Почему гранату Ф-1 называют «лимонкой» ? Оригинал статьи находится на сайте
ИнфоГлаз.рф Ссылка на статью, с которой сделана эта копия -
http://infoglaz.ru/?p=85871