stringtranslate.com

Протокол управления гипертекстовым кофейником

Рабочий чайник, реализующий HTCPCP [1]

Hyper Text Coffee Pot Control Protocol ( HTCPCP ) — это шутливый протокол связи для управления , мониторинга и диагностики кофейников . Он указан в RFC  2324, опубликованном 1 апреля 1998 года как RFC ко Дню дурака [2] как часть первоапрельской шутки [3] . Расширение HTCPCP-TEA было опубликовано как RFC 7168 1 апреля 2014 года [4] для поддержки заваривания чая, также как RFC ко Дню дурака с ошибкой 418.

Протокол

RFC 2324 был написан Ларри Масинтером , который описывает его как сатиру, говоря: «У него есть серьезная цель — он определяет многие способы, которыми HTTP был ненадлежащим образом расширен». [5] Формулировка протокола ясно давала понять, что он не совсем серьезен; например, в нем отмечается, что «существует сильное, темное, насыщенное требование к протоколу, разработанному специально для заваривания кофе».

Несмотря на шутливый характер его происхождения, или, возможно, именно из-за него, протокол остался в качестве незначительного присутствия в сети. Редактор Emacs включает в себя полностью функциональную реализацию на стороне клиента, [6] и существует ряд сообщений об ошибках, жалующихся на отсутствие поддержки протокола со стороны Mozilla . [7] Спустя десять лет после публикации HTCPCP , Web-Controlled Coffee Consortium (WC3) опубликовал первый черновик "HTCPCP Vocabulary in RDF " [8] в пародии на "HTTP Vocabulary in RDF" Консорциума World Wide Web (W3C). [9]

1 апреля 2014 года RFC 7168 расширил HTCPCP для полной поддержки чайников. [4]

Команды и ответы

HTCPCP — это расширение HTTP . Запросы HTCPCP идентифицируются с помощью схемы унифицированного идентификатора ресурса (URI) coffee(или соответствующего слова на любом другом из 29 перечисленных языков) и содержат несколько дополнений к методам HTTP: [ необходима цитата ]

Он также определяет четыре ответа на ошибки :

Сохранить 418 движение

5 августа 2017 года Марк Ноттингем, председатель рабочей группы IETF HTTPBIS , призвал удалить код статуса 418 «Я чайник» из платформы Node.js , код, реализованный в соответствии с исходным кодом 418 «Я чайник», установленным в протоколе управления гипертекстовыми кофейниками [12] . 6 августа 2017 года Ноттингем потребовал удалить ссылки на код 418 «Я чайник» из языка программирования Go [13] , а затем из Requests Python [14] и библиотеки HttpAbstractions ASP.NET [15] .

В ответ на это 15-летний разработчик Шейн Брансуик создал сайт save418.com [16] и основал «Движение Save 418», утверждая, что ссылки на 418 «Я чайник» в разных проектах служат «напоминанием о том, что основные процессы компьютеров по-прежнему создаются людьми». Сайт Брансуика стал вирусным в течение нескольких часов после его публикации, собрав тысячи голосов на социальной платформе Reddit [17] и вызвав массовое принятие хэштега Twitter «#save418» , который он ввел на своем сайте. Прислушавшись к общественному возмущению, Node.js, Go, Python Requests и библиотека HttpAbstractions ASP.NET решили не удалять 418 «Я чайник» из своих проектов. Единогласная поддержка вышеупомянутых проектов и широкой общественности побудила Ноттингем начать процесс маркировки 418 как зарезервированного кода статуса HTTP [18] , гарантируя, что 418 не будет заменен официальным кодом статуса в обозримом будущем.

5 октября 2020 года Python 3.9 был выпущен с обновленной библиотекой HTTP, включая 418 IM_A_TEAPOTкод состояния. [19] В соответствующем запросе на извлечение движение Save 418 было напрямую упомянуто в поддержку принятия. [20]

Использование

Код статуса 418 иногда возвращается серверами при блокировке запроса вместо более подходящего 403 Forbidden . [21]

Примерно во время российского вторжения на Украину в 2022 году российский военный сайт mil.ru возвращал код статуса HTTP 418 при доступе из-за пределов России в качестве меры защиты от DDoS-атак . [22] [23] Изменение было впервые замечено в декабре 2021 года. [24]

Смотрите также

Ссылки

  1. ^ ab Reddington, Joseph, Иллюстрированная реализация ошибки 418, заархивировано из оригинала 2015-09-06 , извлечено 2014-10-18
  2. Masinter, Larry M. (апрель 1998 г.), «Запрос на комментарии 2324», Сетевая рабочая группа, IETF , заархивировано из оригинала 2012-04-04 , извлечено 2012-03-20
  3. ^ ДеНардис, Лора (30 сентября 2009 г.). Политика протоколов: глобализация управления Интернетом. MIT Press. стр. 27 и далее. ISBN 978-0-262-04257-4. Получено 8 мая 2012 г.
  4. ^ ab Nazar, Imran (апрель 2014 г.), «Запрос комментариев 7168», Протокол управления гипертекстовым кофейником для приборов подачи чая (HTCPCP-TEA), IETF , заархивировано из оригинала 29.05.2014 г. , извлечено 22.04.2014 г.
  5. ^ Масинтер, Ларри . "IETF RFCs". Архивировано из оригинала 27.03.2013.
  6. ^ "Расширение Emacs: coffee.el", Emarsden, Chez, архивировано из оригинала 2009-02-01 , извлечено 2009-02-10.
  7. ^ "Ошибка 46647 – (coffeehandler) HTCPCP не поддерживается (RFC2324)", Bugzilla , Mozilla, заархивировано из оригинала 2011-05-14 , извлечено 2005-12-21
  8. ^ Словарь HTCPCP в RDF – WC3 RFC Draft, Chief Arabica (Web-Controlled Coffee Consortium), 1 апреля 2008 г., архивировано из оригинала 15 мая 2021 г. , извлечено 17 марта 2023 г. – через github
  9. ^ Кох, Йоханнес (ред.), HTTP Vocabulary in RDF, et al, W3 , архивировано из оригинала 15 октября 2009 г. , извлечено 17 августа 2009 г.
  10. ^ "Заварщик чая Goblin Teasmade с реализацией ошибки 418". Архивировано из оригинала 2014-12-06 . Получено 2014-07-26 .
  11. ^ "418 Я чайник - HTTP | MDN". developer.mozilla.org . 2023-04-10 . Получено 2023-09-21 .
  12. ^ Ноттингем, Марк. "418 I'm A Teapot #14644". Архивировано из оригинала 2017-08-10 . Получено 2017-08-12 – через github.
  13. ^ Ноттингем, Марк. "net/http: удалить поддержку кода состояния 418 I'm a Teapot". Архивировано из оригинала 2017-08-10 . Получено 2017-08-12 – через github.
  14. ^ Ноттингем, Марк. "418 418 Я чайник #4238". Архивировано из оригинала 2021-05-15 . Получено 2017-08-12 – через github.
  15. ^ Ноттингем, Марк. "418 Я чайник #915". Архивировано из оригинала 2019-05-10 . Получено 2017-08-12 – через github.
  16. ^ Брансуик, Шейн (2017-09-10). «Мы чайники». Движение Save 418. Архивировано из оригинала 2021-05-15 . Получено 2021-05-15 .
  17. ^ "Код ошибки HTTP 418 I'm a Teapot вот-вот будет удален из Node. Нам нужно что-то сделать. [x-post /r/webdev]". Архивировано из оригинала 2017-08-11 . Получено 2017-08-12 – через reddit.
  18. ^ Ноттингем, Марк. «Резервирование 418». Архивировано из оригинала 2017-08-13 . Получено 2017-08-12 – через github.
  19. ^ "Что нового в Python 3.9 — Документация Python 3.9.0". Документация Python . 2020-10-05. Архивировано из оригинала 2020-10-07 . Получено 2020-10-08 .
  20. ^ "Проблема 39507: в библиотеке http отсутствует код статуса HTTP 418 "Я чайник" – трекер Python". bugs.python.org . Архивировано из оригинала 2020-10-14 . Получено 2020-10-08 .
  21. ^ "Включить дополнительную веб-безопасность на веб-сайте". DreamHost . Получено 2022-12-18 .
  22. ^ "Россия, похоже, разворачивает цифровую защиту после DDoS-атак". The Record by Recorded Future . 2022-02-25 . Получено 2022-02-26 .
  23. ^ «Я зашёл на русский сайт, и всё, что я получил, — это этот паршивый чайник». PCMag . Получено 28.02.2022 .
  24. ^ "Сайт Минобороны России заблокирован для нероссийских IP-адресов | Hacker News".

Внешние ссылки