User agent http заголовок: Заголовок Vary: User-Agent — что это такое?

Заголовок запроса User-Agent-это характерная строка,позволяющая серверам и сетевым партнерам идентифицировать приложение,операционную систему,производителя и/или версию.

User-Agent заголовок запроса является характеристикой строки , которая позволяет сервера и сетевые коллеги идентификации приложения, операционную системе, поставщику и / или версии запрашивающего агента пользователя .

Предупреждение. Прочтите раздел «Обнаружение браузера с помощью пользовательского агента», чтобы узнать, почему обслуживание разных веб-страниц или служб в разных браузерах обычно является плохой идеей.

Header typeRequest header
Запрещенное имя заголовкаno

Syntax

User-Agent: <product> / <product-version> <comment>

Общий формат для веб-браузеров:

User-Agent: Mozilla/5.0 (<system-information>) <platform> (<platform-details>) <extensions>
Directives
<product>

Идентификатор продукта-его название или кодовое имя разработки.

<product-version>

Номер версии продукта.

Ноль или более комментариев,содержащих более подробную информацию.Например,информация о субпродукте.

строка Firefox UA

Дополнительные сведения о строках пользовательских агентов на основе Firefox и Gecko см. В справочнике по строкам пользовательских агентов Firefox . Строка UA Firefox разбита на 4 компонента:

Mozilla/5.0 (platform; rv:geckoversion) Gecko/geckotrail Firefox/firefoxversion
  1. Mozilla/5.0 — это общий токен, который говорит о том, что браузер совместим с Mozilla. По историческим причинам почти каждый браузер сегодня его отправляет.
  2. платформа описывает родную платформу, на которой работает браузер (Windows, Mac, Linux, Android и т. д.), и является ли это мобильным телефоном. Телефоны с ОС Firefox говорят: Mobile — Интернет — это платформа. Обратите внимание, что платформа может состоять из несколькихтокенов ; Подробности и примеры см. ниже.
  3. rv: geckoversion указывает версию выпуска Gecko (например, « 17.0 »). В последних версиях браузеров geckoversion совпадает с firefoxversion .
  4. Gecko / geckotrail указывает, что браузер основан на Gecko. (На рабочем столе geckotrail
    всегда является фиксированной строкой 20100101 . )
  5. Firefox / firefoxversion указывает, что это браузер Firefox, и предоставляет версию (например, « 17.0» ).
Examples
Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0
Mozilla/5.0 (Macintosh; Intel Mac OS X x.y; rv:42.0) Gecko/20100101 Firefox/42.0

струна Chrome UA

Строка пользовательского агента Chrome (или движков на основе Chromium/Blink) аналогична строке Firefox. Для совместимости он добавляет такие строки, как KHTML, like Gecko и Safari .

Examples
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36

Струна Opera UA

Браузер Opera также основан на движке Blink, поэтому он выглядит почти так же, как строка Chrome UA, но добавляет

"OPR/<version>" .

Examples
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36 OPR/38.0.2220.41

Использовались более старые выпуски Opera на базе Presto:

Opera/9.80 (Macintosh; Intel Mac OS X; U; en) Presto/2.2.15 Version/10.00
Opera/9.60 (Windows NT 6.0; U; en) Presto/2.1.1

Строка Microsoft Edge UA

Браузер Edge также основан на движке Blink. Он добавляет "Edg/<version>" .

Examples
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36 Edg/91.0.864.59

строка Safari UA

В этом примере строка пользовательского агента — это мобильная версия Safari. В нем есть слово "Mobile" .

Examples
Mozilla/5.0 (iPhone; CPU iPhone OS 13_5_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.1 Mobile/15E148 Safari/604.1

Строка Internet Explorer UA

Examples
Mozilla/5.0 (compatible; MSIE 9.0; Windows Phone OS 7.5; Trident/5.0; IEMobile/9.0)

струны Crawler and bot UA

Examples
Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)
Mozilla/5.0 (compatible; YandexAccessibilityBot/3.0; +http://yandex.com/bots)

Строки UA библиотек и сетевых инструментов

Examples
curl/7.64.1
PostmanRuntime/7.26.5

Specifications

Specification
Семантика HTTP
# field.user-agent

Browser compatibility

DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariWebView AndroidChrome AndroidFirefox для AndroidOpera AndroidSafari на IOSSamsung Internet
User-Agent

Yes

12

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

See also

  • Обнаружение пользователя-агента,история и контрольный список
  • Ссылка на строку агента пользователя Firefox
  • Обнаружение браузера с помощью агента пользователя
  • Client hints


HTTP
  • Upgrade

    Заголовок обновления HTTP 1. 1 (только)может быть использован для уже установленного соединения клиент/сервер по другому протоколу (через тот же транспорт Предупреждение:HTTP/2

  • Upgrade-Insecure-Requests

    Заголовок HTTP Upgrade-Insecure-Requests отправляет сигнал серверу, выражая предпочтение клиента для зашифрованного и аутентифицированного ответа, что он может

  • User-Agent: Firefox

    Этот документ описывает строку агента пользователя,используемую Firefox 4 и более поздними приложениями на основе Gecko 2.

    0 Строка UA самого Firefox разбивается на

  • Vary

    Заголовок ответа Vary HTTP описывает части сообщения запроса,помимо метода и URL,которые влияют на содержимое,оно встречается Одно и то же значение заголовка Vary

  • 1
  • 208
  • 209
  • 210
  • 211
  • 212
  • 405
  • Next

HTTP.

Какую информацию браузер передает в HTTP заголовках

 

Что такое HTTP заголовки ?

HTTP — это HyperText Transfer Protocol (протокол передачи гипертекста), который используется для коммуникации с сайтом. Все, что вы сейчас видите в окне браузера, получено с помощью этого протокола.

Когда вы открываете сайт, браузер обменивается с ним данными в HTTP заголовках (HTTP Headers) и отправляет различную информацию о себе.

Запрос браузера может выглядеть так:

 

В чем опасность HTTP заголовков?

  1. Становится доступна информация о вашем браузере, системе и IP.

  2. При использовании прозрачных прокси настоящий IP может передаваться в специальных заголовках, тем самым раскрывая вас.

  3. Через Referer становится доступен адрес источника, с которого вы перешли на сайт или сделали запрос.

  4. На основе этих данных сайты могут составить уникальный цифровой отпечаток (fingerprint), с помощью которого вас можно идентифицировать даже после смены IP.

 

Что такое User Agent?

User Agent — это часть HTTP заголовков, которая содержит информацию о браузере и операционной системе.

 

Методы сохранения анонимности:

  • User Agent можно изменить в настройках некоторых браузеров или с помощью специальных плагинов (например, RMOSChange для Firefox / Internet Explorer, User-Agent Switcher для Chrome, User Agent Changer для Opera).

  • Для маскировки Referer можно использовать такие плагины, как Referer Control (для Chrome).

  • Существуют утилиты и плагины для прямого редактирования HTTP-запросов. (например, Modify Headers для Google Chrome)

 

 

Как вручную изменить User Agent в Firefox:

  1. Введите в адресной строке: about:config и нажмите “I’ll be careful, i promise!”.  

  2.  

    Найдите в появившемся окне, используя поиск: useragent

  3. Убедитесь, что параметра general.useragent.override не существует.

  4. Кликните правой кнопкой на пустом месте и выберите “New” —> “String”.

  5. Введите в окне: general.useragent.override и нажмите “Ок”. 

  6. Введите новый User Agent (например, Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/7046A194A ) и нажмите “Ок”. 

Список примерных конфигураций user agent’ов вы можете найти в Интернете (например, здесь, здесь или здесь).

 

 

Вы можете проверить на нашем сайте HTTP-заголовки, которые отправляет ваш браузер:

 

  • QUERY_STRING — параметры, переданные скрипту, если строка запроса представляет собой адрес.

  • REQUEST_METHOD — метод запроса, который применялся для вызова скрипта GET или POST.

  • REQUEST_URI — содержит имя и параметры скрипта, начиная от корневой директории виртуального хоста, если строка запроса представляет собой адрес.

  • SERVER_PROTOCOL — имя и версия информационного протокола, через который была запрошена страница, к примеру ‘HTTP/1.1’.

  • REMOTE_ADDR — IP-адрес удаленного клиента, с которого был сделан запрос.

  • REMOTE_PORT — порт клиента, через который было установлено соединение с сервером.

  • HTTP_ACCEPT — предпочтения клиента относительно типа запрашиваемого документа.

  • HTTP_ACCEPT_LANGUAGE — предпочтения клиента относительно языка запрашиваемой страницы.

  • HTTP_USER_AGENT — информация о версии и типе операционной системы и браузера посетителя.

  • HTTP_ACCEPT_ENCODING — список кодировок сжатия, которые поддерживает браузер.

  • HTTP_HOST — имя сервера (в большинстве случаев совпадает с доменным именем сайта, расположенного на сервере).

  • HTTP_CONNECTION — тип соединения браузера с сервером. Значение keep-alive означает, что браузер поддерживает постоянное соединение и в течение одного сеанса может делать несколько запросов.

  • HTTP_COOKIE — данные о cookies сессии, сохраненные в браузере.

  • HTTP_UPGRADE_INSECURE_REQUESTS — передает значение “1” для автоматического перехода небезопасных (например, HTTP: ) запросов на безопасную альтернативу (например, HTTPS: ), прежде чем браузер загрузит их.

  • HTTP_CACHE_CONTROL — max-age определяет “срок годности” файла (в секундах), по истечении которого файл необходимо загружать заново.

  • HTTP_REFERER — адрес источника, с которого посетитель сделал запрос или зашел на сайт.

  • HTTP_DNT — значение статуса “Do Not Track”, если “1” — включен.

 

Ваш настоящий IP может передаваться в следующих HTTP-заголовках:

  • HTTP_VIA

  • HTTP_X_FORWARDED_FOR

  • HTTP_PROXY_CONNECTION

  • X_FORWARDED_FOR

  • FORWARDED_FOR

  • FORWARDED

  • HTTP_FORWARDED_FOR_IP

  • HTTP_FORWARDED_FOR

  • FORWARDED_FOR_IP

  • HTTP_X_FORWARDED

  • HTTP_FORWARDED

  • HTTP_CLIENT_IP, VIA, X_FORWARDED

  • CLIENT_IP

 

 

 

 

 

 

HTTP-заголовок User-Agent: синтаксис, директива, примеры

HTTP-заголовок User-Agent — это заголовок запроса, содержащий строку, идентифицирующую операционную систему и браузер, используемые веб-сервером. HTTP-заголовок User-Agent содержит строку User-Agent. Заголовок запроса User-Agent — это уникальная строка, которая позволяет серверам и одноранговым узлам сети идентифицировать запрашивающее приложение пользовательского агента, операционную систему, поставщика и/или версию. HTTP-заголовок User-Agent имеет несколько значений. <версия продукта> и комментарий> <обязательны>. Значение синтаксиса HTTP-заголовка User-Agent используется для идентификации приложения, операционной системы, поставщика и версии пользовательского агента запроса. Пример HTTP-заголовка User-Agent показан ниже.

 User-Agent: Mozilla/5.0 (<информация о системе>)  (<сведения о платформе>)  

Заголовок запроса HTTP-заголовка User-Agent показан выше. В статье будут обработаны синтаксис HTTP-заголовка User-Agent, директивы и использование с примерами.

HTTP-заголовок User-Agent — это заголовок, содержащий строку, сообщающую веб-серверу, какая у него операционная система и браузер. Используйте заголовок запроса User-Agent, чтобы сообщить серверам и другим пользователям сети, какое программное обеспечение, операционную систему, поставщика или версию программного обеспечения вы используете. Целью HTTP-заголовка User-Agent является создание журнала доступа со всеми запросами к серверу.

Заголовок HTTP User-Agent состоит из трех частей по своему синтаксису. Синтаксис использования HTTP-заголовка User-Agent описан ниже.

 User-Agent:  /   

В заголовок HTTP User-Agent можно поместить несколько директив. Директивы по использованию HTTP-заголовка User-Agent приведены ниже.

  

Уникальная идентификация продукта, например его имя или кодовое имя разработки.

 <версия продукта> 

Номер версии продукта можно найти здесь.

 <комментарий> 

Нет или более комментариев, содержащих дополнительную информацию. Например, информация о субпродуктах.

HTTP-заголовок User-Agent используется для идентификации операционной системы веб-сервера и браузера, а также для того, чтобы одноранговые узлы сетевого протокола могли идентифицировать веб-сервер. Каждый веб-сайт, который посещает пользователь, получает HTTP-заголовок User-Agent, который отправляется браузером. Строка пользовательского агента не записывается стандартизированным образом, потому что разные веб-браузеры используют разные форматы, и многие веб-браузеры загружают большой объем информации в свои пользовательские агенты. Поле заголовка HTTP User-Agent включается в заголовок HTTP для веб-сайта, когда браузер пользователя устанавливает соединение с веб-сайтом. Информация, содержащаяся в области заголовка, отличается от браузера к браузеру. Информация используется для обслуживания различных веб-сайтов в различных веб-браузерах и операционных системах на основе информации, полученной от них.

Примеры использования User-Agent

HTTP-заголовок User-Agent имеет разные примеры использования разных веб-браузеров. Ниже приведен пример использования HTTP-заголовка User-Agent.

Строка UA Firefox

 Mozilla/5.0 (платформа; rv:geckoversion) Gecko/geckotrail Firefox/firefoxversion 

Строка UA Chrome

 Mozilla/5. 0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML), например, Chrome/537.36 (KHTML) 51.0.2704.103 Safari/537.36 

Opera Строка UA

 Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/51.0.2704.106 Safari/537.36 OPR/38.0.2220.41 

Строка Microsoft Edge UA

 Mozilla/5.0 (Win.Windows/5.0; ; x64) AppleWebKit/537.36 (KHTML, например, Gecko) Chrome/91.0.4472.124 Safari/537.36 Edg/91.0.864.59 

Safari Строка UA

 Mozilla/5.0 (iPhone; процессор iPhone OS 13_5_1, как Mac OS X) AppleWeb1Kit/605.605. .15 (KHTML, как и Gecko) Версия/13.1.1 Mobile/15E148 Safari/604.1 

Строка UA для Internet Explorer

 Mozilla/5.0 (совместимая; MSIE 9.0; ОС Windows Phone 7.5; Trident/5.0; IEMobile/9.0) 

Строки UA сканера и бота

 Mozilla/5.0 (совместимая; Googlebot/2.1; + http://www.google.com/bot.html) 

Библиотека и сетевой инструмент Строки UA

 curl/7.64.1
PostmanRuntime/7.26. 5 

Существует только один документ спецификации для HTTP-заголовка User-Agent, которым является протокол передачи гипертекста (HTTP/1.1): семантика и содержимое. Протокол передачи гипертекста (HTTP/1.1): семантика и содержание. В статье 5.5.3 упоминается определение и использование HTTP-заголовка User-Agent. Кроме того, в этой статье обсуждаются примеры и значения HTTP-заголовка User-Agent.

HTTP-заголовок User-Agent. Тип HTTP-заголовка для User-Agent HTTP-заголовка — это заголовки запроса, поскольку они содержат информацию об операционной системе и браузере, определяемую строкой, используемой веб-сервером.

Заголовки HTTP, аналогичные заголовку HTTP User-Agent, перечислены ниже.

  • Ссылки на строку пользовательского агента Firefox: Строка пользовательского агента Firefox указывает строку пользовательского агента, которая используется в Firefox 4 и более поздних версиях, а также в приложениях, созданных на Gecko 2.0 или более поздних версиях.
  • Обнаружение браузера с помощью пользовательского агента: HTTP-заголовок User-Agent используется для идентификации браузера. Как правило, не рекомендуется обслуживать отдельные веб-страницы или службы для разных типов браузеров. Независимо от того, какой браузер или гаджет кто-то использует, Интернет должен быть доступен для всех. Существуют методы разработки вашего веб-сайта, чтобы он постепенно улучшался в зависимости от наличия функций, а не за счет ориентации на определенные браузеры или операционные системы.

Существует несколько браузеров, поддерживающих HTTP-заголовок User-Agent. Ниже перечислены следующие браузеры.

  • Браузер Chrome совместим с HTTP-заголовком User-Agent
  • Браузер Edge совместим с HTTP-заголовком User-Agent
  • Браузер Firefox совместим с HTTP-заголовком User-Agent
  • Браузер Internet Explorer совместим с User -Agent HTTP Header
  • Opera Browser совместим с HTTP-заголовком User-Agent
  • Браузер Safari совместим с заголовком HTTP User-Agent
  • Браузер WebView Android совместим с заголовком HTTP User-Agent
  • Браузер Chrome Android совместим с заголовком HTTP User-Agent HTTP-заголовок User-Agent
  • Браузер Opera Android совместим с HTTP-заголовком User-Agent
  • Браузер Safari IOS совместим с HTTP-заголовком User-Agent
  • Samsung Internet Browser совместим с HTTP-заголовком User-Agent

Вы можете увидеть изображение, которое показывает кросс-браузерную совместимость HTTP-заголовков User-Agent ниже.

  • Автор
  • Последние сообщения

Целостное SEO

Исследовательский отдел SEO в Holistic SEO & Digital

Целостное SEO & Digital было создано Кораем Тугберком ГУБУРом. Целостное SEO — это процесс разработки интегрированных проектов цифрового маркетинга со всеми аспектами, включая кодирование, обработку естественного языка, науку о данных, скорость страницы, цифровую аналитику, контент-маркетинг, техническое SEO и брендинг. Сегодня структурированная семантическая поисковая система улучшает свою способность обнаруживать объекты реального мира. Простого веб-сайта уже недостаточно. Чтобы показать, что ваш бренд является авторитетным, заслуживающим доверия и экспертом в своей нише, вам нужны проекты по поисковой оптимизации на основе сущностей. Основное внимание Holistic SEO & Digital направлено на улучшение органической видимости бренда и потенциала роста.

Последние сообщения от Holistic SEO (посмотреть все)

Действительно ли отсутствие User-Agent в HTTP-запросе?

спросил

Изменено 5 месяцев назад

Просмотрено 29 тысяч раз

Мы заметили, что время от времени мы получаем HTTP-запрос без действительной строки User-Agent. Есть ли какой-либо действительный реальный случай для принятия этого типа HTTP-запроса?

Почему бы нам не заблокировать автоматически все IP-адреса, с которых поступает запрос такого типа?

ОБНОВЛЕНИЕ Мое намерение с помощью фразы «реальный мир» состояло в том, чтобы указать, что я не спрашиваю, что разрешает протокол HTTP. Разрешается отправлять HTTP-запросы без некоторых заголовков. Я спрашиваю, какой «реальный» случай у вас был бы для разрешения этого типа HTTP-запроса на ваш сервер.

Как указано в RFC 7231 (но почти такой же абзац можно найти в RFC2616):

5.5.3 Агент пользователя

Поле заголовка «User-Agent» содержит информацию о пользовательском агенте, инициирующем запрос, который часто используется серверами, чтобы помочь определить объем заявленных проблем совместимости, чтобы обойти или адаптировать ответы, чтобы избежать определенных ограничений пользовательского агента, а также для аналитики относительно использования браузера или операционной системы. Пользовательский агент ДОЛЖЕН отправлять поле User-Agent в каждом запросить, если специально не настроено не делать этого.

Ключевое слово здесь СЛЕДУЕТ. И да, есть RFC, который определяет, что должно означать это слово, RFC 2119:

.
  1. СЛЕДУЕТ Это слово или прилагательное «РЕКОМЕНДУЕМЫЙ» означает, что могут существовать веские причины в конкретных обстоятельствах для игнорирования конкретный пункт, но все последствия должны быть поняты и тщательно взвесить, прежде чем выбрать другой курс.

Таким образом, хотя агенты, которые не отправляют User-Agent, не следуют тому, что можно считать лучшей практикой, они не нарушают никаких правил (rfc). Так что, на мой взгляд, действительно 9 не существует.0161 техническая причина их заблокировать.

5

Я думаю, что многие люди используют HTTP-запросы без User-Agent, в основном, когда они используют API для выполнения запроса.

7

Из моего личного опыта

Запросы выглядят так в журнале apache, если не установлен пользовательский агент:

 xx.xxx.xxx.xxx - - [10/Sep/2021:07:31:16 + 0200] "GET/HTTP/1.0" 200 25485 "-" "-"
 

Этот конкретно совершил злонамеренное действие.

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

По моему опыту, не существует Законного варианта использования , по крайней мере, нет общего.

Судя по журналам моего сервера, все запросы без пользовательского агента являются вредоносными. Все исходит от ботов.

Теоретически это может сделать тот, кто «действительно заботится о конфиденциальности». Это зависит от того, какую услугу вы предоставляете. Я веду пару сайтов. Люди, не использующие браузеры, не являются моими клиентами.

Хотя для разработчика вредоносных ботов и правда тривиально добавить пользовательский агент (фальшивый, такой как Chrome), это не означает, что это не является незаконным намерением.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *