Общие сведения о строках агента пользователя

В этой статье приводится описание строки агента пользователя, которая служит для определения используемого браузера и предоставляет некоторые сведения о системе серверам, на которых размещаются посещаемые веб-сайты. В этой статье также описывается, как просмотреть строку агента пользователя, приводятся краткие сведения о маркерах, используемых последними версиями Windows Internet Explorer, и разделах реестра, которые влияют на строку агента пользователя.

Данный документ содержит следующие разделы.

  • Введение 
  • Общие сведения о строке агента пользователя
  • Просмотр строки агента пользователя
  • Маркеры агента пользователя Internet Explorer
  • Разделы реестра агента пользователя
  • Связанные разделы

Введение

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

Поскольку некоторые сторонние сайты добавляют дополнительные сведения в строку агента пользователя, необходимо разбираться в ее структуре. В этой статье описывается структура строки агента пользователя, значения, передаваемые Internet Explorer последних версий, и разделы реестра, влияющие на строку агента пользователя.

Общие сведения о строке агента пользователя

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

На следующем рисунке показан пример строки агента пользователя, передаваемой Internet Explorer, в которой выделены маркеры.

По историческим причинам Internet Explorer определяет себя как браузер Mozilla 4.0.

В примере строки агента пользователя выше содержится три маркера.

  1. Флаг совместимости (здесь показан как «compatible»), который используется в большинстве современных браузеров. Он указывает на то, что Internet Explorer поддерживает типовой набор возможностей.
  2. Маркер версии, который определяет браузер и содержит номер версии. Маркер версии в примере выше («MSIE 7.0») определяет Internet Explorer 7.
  3. Маркер платформы, который определяет операционную систему и содержит номер версии. Маркер платформы в примере выше («Windows NT 6.0») указывает Windows Vista.

В приведенном примере агентом пользователя является Internet Explorer. Однако другие программы также предоставляют строки агента пользователя при обращении к серверам через Интернет. Например, платформа Windows RSS предоставляет следующий заголовок агента пользователя при запросе RSS-данных.

Windows-RSS-Platform/1.0 (MSIE 7.0; Windows NT 5.1)

Так же как и строка агента пользователя, отправляемая Internet Explorer, этот заголовок агента пользователя содержит сведения о системе пользователя.

Дополнительные маркеры могут использоваться в строке агента пользователя по ряду причин. Обычно они определяют дополнительные компоненты, установленные в системе. Например, маркер «SV1» появляется в строке агента пользователя, если на компьютере установлена ОС Windows XP с пакетом обновления 2 (SP2). Также необходимо заметить, что некоторые сторонние программы изменяют строку агента пользователя в собственных целях.

Примечание.  В целях защиты конфиденциальности следует периодически проверять строку агента пользователя и ее содержимое.

Сведения о других заголовках, пересылаемых на веб-серверы, см .в разделе RFC2616, Section 14: Header Field Definitions Description: Ссылка в Интернете, доступном на веб-сайте консорциума World Wide Web Consortium (W3C).

Просмотр строки агента пользователя

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

javascript:alert(navigator.userAgent)

Имейте в виду, что в этом коде регистр символов учитывается.

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

Совет.  Если используется одна из последних версий Windows, можно скопировать строку агента пользователя в буфер обмена, нажав сочетание клавиш CTRL+Cперед закрытием диалогового окна.

Маркеры агента пользователя Internet Explorer

В этом разделе приведены сведения о маркерах, используемых последними версиями Internet Explorer. По умолчанию Internet Explorer включает в строку агента пользователя три маркера.

  1. Маркеры версии
  2. Маркеры платформы
  3. Маркеры компонентов

Как правило, маркеры версии начинаются с «MSIE», после чего указывается номер версии браузера. Многие предварительные версии добавляют к номеру версии букву «b». В следующей таблице перечислены маркеры версий, используемые в последних версиях Internet Explorer.

Маркер версии Описание
MSIE 8.0 Internet Explorer 8 (предварительная версия)
MSIE 7.0 Internet Explorer 7
MSIE 7.0b Internet Explorer 7 (только предварительная бета-версия 1)
MSIE 6.0 Microsoft Internet Explorer 6
MSIE 6.0b Internet Explorer 6 (предварительная версия)
MSIE 5.5 Internet Explorer 5.5
MSIE 5.01 Internet Explorer 5.01
MSIE 5.0 Internet Explorer 5
MSIE 5.0b1 Internet Explorer 5 (предварительная версия)
MSIE 4.01 Internet Explorer 4.01

Маркеры платформы определяют операционную систему. В следующей таблице перечислены маркеры платформы для последних версий Windows, используемые в Internet Explorer.

Маркер платформы Описание
Windows NT 6.0 Windows Vista
Windows NT 5.2 Windows Server 2003; Windows XP x64 Edition
Windows NT 5.1 Windows XP
Windows NT 5.01 Windows 2000 с пакетом обновления 1 (SP1)
Windows NT 5.0 Windows 2000
Windows NT 4.0 Microsoft Windows NT 4.0
Windows 98; Win 9x 4.90 Windows Millennium Edition (Windows Me)
Windows 98 Windows 98
Windows 95 Windows 95
Windows CE Windows CE

В строке агента пользователя также могут указываться некоторые дополнительные компоненты. В следующей таблице перечислены наиболее распространенные из них. Имейте в виду, что строка агента пользователя может изменяться также многими другими приложениями. По этой причине привести исчерпывающий список невозможно. Если в строке агента пользователя обнаружены дополнительные маркеры, необходимо тщательно изучить их.

Маркер Описание
.NET CLR Среда CLR .NET Framework с указанием номера версии.
SV1 Internet Explorer 6 с дополнительными функциями безопасности (только в Windows XP с пакетом обновления 2 (SP2) и Windows Server 2003).
Tablet PC Установлены службы планшетного ПК; число указывает на номер версии.
Win64; IA64 В системе установлен 64-разрядный процессор (Intel).
Win64; x64 В системе установлен 64-разрядный процессор (AMD).
WOW64 32-разрядная версия Internet Explorer работает на 64-разрядном процессоре.

Разделы реестра агента пользователя

При установке некоторых компонентов Windows, например Microsoft .NET Framework или пакета обновления 2 (SP2) для Windows XP, в строку агента пользователя добавляются маркеры. Для этого маркеры добавляются в следующие разделы реестра.

HKEY_LOCAL_MACHINE (или HKEY_CURRENT_USER)
     SOFTWARE
          Microsoft
               Windows
                    CurrentVersion
                         Internet Settings
                              User Agent
                                   Pre Platform
                                        Маркер=Значение
                                   Post Platform
                                        Маркер=Значение

Разделы Pre-Platform и Post-Platform содержат параметры, имена которых указываются соответственно перед маркером платформы и после него. Например, если в раздел Post-Platform добавить строковый параметр, его имя появится в строке агента пользователя после маркера платформы. Если в любой из этих разделов добавить несколько параметров, они будут указываться в произвольном порядке.

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

HKEY_LOCAL_MACHINE (или HKEY_CURRENT_USER)
     SOFTWARE
          Microsoft
               Windows
                    CurrentVersion
                         Internet Settings
                              5.0
                                   User Agent
                                        (по умолчанию) = "Mozilla/4.0"
                                        Compatible= "compatible"
                                        Platform= "Windows NT 5.1"
                                        Version= "MSIE 6.0"
                                        Pre Platform
                                             Маркер=Значение
                                        Post Platform
                                             Маркер=Значение

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

Параметры Compatible, Platform и Version переопределяют соответственно маркеры совместимости, платформы и версии в строке агента пользователя.

В строку агента пользователя можно добавить дополнительные маркеры, создав новые строковые параметры в разделах Pre-Platform и Post-Platform с помощью редактора реестра. Имя параметра определяет маркер; значение параметра игнорируется. Маркеры, добавленные в раздел Pre-Platform, указываются в строке агента пользователя перед маркером платформы. Маркеры, добавленные в раздел Post-Platform, указываются в строке агента пользователя после маркера платформы. Если в раздел Pre-Platform или Post-Platform добавить несколько параметров, они будут указываться в произвольном порядке.

Примечание.  Если на момент внесения изменений в эти разделы реестра браузер открыт, изменения вступят в силу только после того, как будут закрыты все окна браузера, а также приложения, в которых используется элемент управления WebBrowser. Имейте в виду, что приложения, в которых используется элемент управления WebBrowser, могут переопределять строку агента пользователя Internet Explorer, не изменяя ее. Дополнительные сведения см. в статье PRB: Клиенты элемента управления WebBrowser используют общие глобальные параметры.

Связанные разделы