Подтвердить что ты не робот

Используется ли HTTP/1.0?

Скажем, нужно написать HTTP-сервер/клиент, насколько важно поддерживать HTTP/1.0? Используется ли он где-нибудь в настоящее время?

Изменить: Я меньше разбираюсь в полезности/важности HTTP/1.0, а скорее о количестве программного обеспечения, которое фактически использует его для не-внутреннего (например, для внутреннего тестирования) цели в реальном мире (браузеры, роботы, смартфоны/тупиды и т.д.).

4b9b3361

Ответ 1

wget использует HTTP/1.0, и он по-прежнему относительно популярен (хотя он поддерживает несколько функций HTTP/1.1, таких как Host:, который необходим для доступа к любым виртуальным хостам).

Ответ 2

Справедливое количество серверов намеренно возвращает ответы HTTP/1.0, потому что некоторые (более старые) браузеры будут предоставлять сервер HTTP/1.0 более высокий лимит соединения, чем ограничение на 2 соединения, наложенное для постоянных соединений HTTP/1.1.

Но в целом большинство "HTTP/1.0" реализаций на самом деле немного ограничены версиями реализации HTTP/1.1, и многие реализации HTTP/1.1 действительно не поддерживают некоторые функции этой версии (например, конвейерная обработка).

Ответ 3

Я использую его все время, когда я подключаюсь к серверу, чтобы проверить подключение или выяснить, почему он не работает:

$ telnet 192.168.1.1 80
GET / HTTP/1.0\r\n
\r\n

... 

(потому что для создания запроса 1.0 не требуется, чтобы я предоставлял дополнительные заголовки).

Ответ 4

Взглянув на это сам для других целей:

"HTTP/1.0 используется прокси-серверами, некоторыми мобильными клиентами и IE, когда     настроен на использование прокси. Таким образом, 1.0, по-видимому,     тривиальный% трафика в сети в целом.     ...     Да, там еще много клиентов 1.0.

Источник (июль 2009): http://groups.google.com/group/erlang-programming/msg/08f6b72d5156ef74

: - (

Обновление (март 2011):

Если вы собираетесь создать клиент/сервер, сделайте клиент использовать HTTP/1.1 и сделайте сервер приемлемым как 1.1, так и 1.0. Выполняя веб-разработку, PITA требует, чтобы клиенты пытались загрузить страницу без заголовка Host, потому что у меня нет способа узнать, какой сайт я должен загрузить: -S Поэтому вам лучше не создавать такой клиент: -)

Ответ 5

HTTP/1.0 очень важно при написании очень простых клиентов, которым не нужны накладные расходы всех 1.1 вещей, таких как конвейерная обработка и другие сложные вещи, требуемые 1.1. Опубликовать запрос получить ответ и отключить очень легко кодировать. Это может быть полезно при написании тестовых примеров для вашего сервера, которые просто хотят протестировать функциональность приложения, а НЕ - реализацию протокола HTTP.

Существует множество мобильных браузеров и приложений, которые используют 1.0, потому что у них нет места или необходимости в более сложных реализациях 1.1, а проблемы с задержкой с не-3G-соединениями на не-смартфонах полностью отрицают любые преимущества 1.1 особенности.

Существует также множество прокси, которые деградируют все до 1.0 независимо от того, что запрашивает клиент, а затем возникают проблемы с IE.

Итак, короткий ответ: для HTTP-сервера общего назначения 1.0 очень актуальна.

Ответ 6

По состоянию на 2016 год вы могли бы подумать, что известность снизится еще больше, поскольку в 1999 году было введено 1,1, так что это около 17 лет.

Я проверил 7 727 198 строк журналов, чтобы узнать, какой процент я получаю от HTTP/1.0 и HTTP/1.1:

 Protocol    Counts      Percent
--------------------------------
HTTP/0.9            0     0.00%
HTTP/1.0    1,636,187    21.17%   (all)
HTTP/1.0       15,415     0.20%   (without the obvious robots)
HTTP/1.1    6,091,011    78.83%
HTTP/2              0     0.00%

Из того, что я вижу, большая часть HTTP/1.0 принадлежит роботам. Поэтому я попытался удалить записи, которые, очевидно, были такими (например, агент, включая слово robot, bot, slurp и т.д.)

Итак, похоже, что количество конечных пользователей, все еще застрявших с HTTP/1.0, сегодня очень ограничено (0,2%). Однако, если вы хотите, чтобы роботы просматривали ваши веб-сайты, вам может понадобиться/хотите поддерживать работу HTTP/1.0. Большинство в любом случае будут включать заголовок Host: ..., даже если они рекламируют свое соединение как протокол HTTP/1.0.

Кроме того, различия между HTTP/1.0 и HTTP/1.1 очень размыты в плане реализации. Большинство людей счастливо смешивают оба. Я бы не стал беспокоиться о том, чтобы все еще принимать/обрабатывать запросы HTTP/1.0.

На другом сервере я начинаю видеть запросы HTTP/2.0, которые выглядят так (получилось 2427, и я вижу 34,161,268 HTTP/1.0 и HTTP/1.1 запросов, поэтому 0,007%):

PRI * HTTP/2.0

Ответ 7

IME это было очень давно, так как я видел истинный запрос HTTP/1.0. (включая мобильные устройства fuzzylollipop).

Я говорю истинный запрос, поскольку MSIE все еще (претендует) на понижение до HTTP/1.0 по умолчанию (если yo sig в ​​config) при подключении через прокси (все исходящие запросы отмечены как HTTP/1.0), однако он по-прежнему содержит HTTP/1.1 конкретные заголовки запросов и уважает все ответы HTTP/1.1.

Любопытно, что IIS в зеркальном изображении с радостью игнорирует версию HTTP (хотя я не слишком много экспериментировал с этим, чтобы увидеть, поддерживает ли только для пользовательских агентов MSIE).

Таким образом, с любопытным совпадением, MSIE и IIS работают гораздо лучше с прокси, чем со стандартными инструментами.

С.