User-Agent

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

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

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

Тип заголовка Заголовок запроса
Запрещённое имя заголовка Нет

Синтаксис

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

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

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

Директивы

<product>

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

<product-version>

Версия продукта

<comment>

Может быть пустым или содержать дополнительную информацию. Например, информацию о продукте.

Строка UA в Firefox

Подробные сведения о user agent строках в Firefox и других браузерах, основанных на движке Gecko, вы найдёте в справочнике.

Строка UA в Firefox разбита на 4 части и одну общую метку для всех:

Mozilla/5.0 (platform; rv:geckoversion) Gecko/geckotrail Firefox/firefoxversion
  1. Mozilla/5.0 — общая метка, которая сообщает, что браузер совместим с Mozilla. По историческим причинам сегодня такую метку отправляет почти каждый браузер.
  2. platform указывает платформу, на которой работает браузер (Windows, Mac, Linux, Android и т.д.), а так же, мобильный ли это телефон. В телефонах на Firefox OS указывается только Mobile, поскольку Firefox OS построена на веб-технологиях. Обратите внимание, platform может содержать несколько значений, разделённых ;. Подробная информация и примеры ниже.
  3. rv:geckoversion указывает релизную версию Gecko (например, "17.0"). В последних браузерах geckoversion совпадает с firefoxversion.
  4. Gecko/geckotrail указывает, что браузер основан на Gecko (на компьютерах geckotrail — всегда строка 20100101).
  5. Firefox/firefoxversion обозначает, что браузером является Firefox, и указывает его версию (например, "17.0").

Примеры

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

Строка UA в Chrome

Строка user agent в Chrome и браузерах, основанных на движке Chromium/Blink, аналогична строке Firefox. Для совместимости добавлены строки KHTML, like Gecko и Safari.

Примеры

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

Строка UA в Opera

Браузер Opera также основан на движке Blink, поэтому его строка user agent совпадает со строкой Chrome, только в конце добавляется "OPR/<version>".

Примеры

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

Строка UA в Microsoft Edge

Браузер Microsoft Edge также основан на движке Blink, поэтому его строка user agent совпадает со строкой Chrome, только в конце добавляется "Edg/<version>".

Примеры

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

Строка UA в Safari

В этом примере строка user agent представлена в мобильной версии Safari и содержит слово "Mobile".

Примеры

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

Строка UA в Internet Explorer

Примеры

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

Строка UA поискового робота

Примеры

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 у библиотек и net-tools

Примеры

curl/7.64.1
PostmanRuntime/7.26.5

Cпецификации

Specification
HTTP Semantics
# field.user-agent

Совместимость с браузерами

BCD tables only load in the browser

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