Сервис для
сео - оптимизаторов

Найди ошибки на сайте
Ошибки мешают продвижению сайта
Исправь ошибки на сайте
Сайт без ошибок продвигать легче
Получи новых клиентов
Новые клиенты принесут больше прибыль

Что такое пользовательский агент браузера?

  1. Основы
  2. Изучение пользовательских агентов
  3. Пользовательский агент String Mess
  4. Пользы

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

Ваш браузер отправляет свой пользовательский агент на каждый веб-сайт, к которому вы подключаетесь. Мы писали о изменение пользовательского агента вашего браузера раньше - но что такое пользовательский агент?

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

Основы

Когда ваш браузер подключается к веб-сайту, он включает поле User-Agent в свой заголовок HTTP. Содержимое поля пользовательского агента варьируется от браузера к браузеру. Каждый браузер имеет свой собственный, уникальный пользовательский агент. По сути, пользовательский агент - это способ для браузера сказать «Привет, я Mozilla Firefox в Windows» или «Привет, я Safari на iPhone» веб-серверу.

Веб-сервер может использовать эту информацию для обслуживания разных веб-страниц для разных веб-браузеров и разных операционных систем. Например, веб-сайт может отправлять мобильные страницы в мобильные браузеры, современные страницы в современные браузеры и сообщение «Пожалуйста, обновите ваш браузер» до Internet Explorer 6.

Изучение пользовательских агентов

Например, вот пользовательский агент Firefox в Windows 7:

Mozilla / 5.0 (Windows NT 6.1; WOW64; rv: 12.0) Gecko / 20100101 Firefox / 12.0

0) Gecko / 20100101 Firefox / 12

Этот пользовательский агент довольно много говорит веб-серверу: операционная система Windows 7 (кодовое имя Windows NT 6.1), это 64-разрядная версия Windows (WOW64) и сам браузер Firefox 12.

Теперь давайте посмотрим на пользовательский агент Internet Explorer 9, который:

Mozilla / 5.0 (совместимый; MSIE 9.0; Windows NT 6.1; WOW64; Trident / 5.0)

0)

Строка агента пользователя идентифицирует браузер как IE 9 с механизмом рендеринга Trident 5. Однако вы можете заметить что-то непонятное - IE идентифицирует себя как Mozilla.

Мы вернемся к этому через минуту. Во-первых, давайте также рассмотрим пользовательский агент Google Chrome:

Mozilla / 5.0 (Windows NT 6.1; WOW64) AppleWebKit / 536,5 (KHTML, как Gecko) Chrome / 19.0.1084.52 Safari / 536,5

52 Safari / 536,5

Сюжет сгущается: Chrome притворяется и Mozilla, и Safari. Чтобы понять почему, нам нужно изучить историю пользовательских агентов и браузеров.

Пользовательский агент String Mess

Mosaic был одним из первых браузеров. Его строка агента пользователя была NCSA_Mosaic / 2.0. Позже появился Mozilla (позже переименованный в Netscape), и его агентом был Mozilla / 1.0. Mozilla был более продвинутым браузером, чем Mosaic - в частности, он поддерживал фреймы. Веб-серверы проверили, что пользовательский агент содержит слово Mozilla, и отправили страницы с фреймами в браузеры Mozilla. В другие браузеры веб-серверы отправляли старые страницы без фреймов.

В конце концов появился Microsoft Internet Explorer, который также поддерживал фреймы. Однако IE не получал веб-страницы с фреймами, потому что веб-серверы просто отправляли их в браузеры Mozilla. Чтобы решить эту проблему, Microsoft добавила слово Mozilla к своему пользовательскому агенту и добавила дополнительную информацию (слово «совместимый» и ссылку на IE). Веб-серверы были рады видеть слово Mozilla и отправили IE на современные веб-страницы. Другие браузеры, которые появились позже, делали то же самое.

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

В конце концов, некоторые серверы искали слово Gecko - движок рендеринга Firefox - и обслуживали браузеры Gecko на разных страницах, чем старые. KHTML - изначально разработанный для Konquerer на рабочем столе KDE в Linux - добавил слова «как Gecko», чтобы они также получили современные страницы, разработанные для Gecko. WebKit был основан на KHTML - когда он разрабатывался, они добавили слово WebKit и сохранили оригинальную строку «KHTML, как Gecko» в целях совместимости. Таким образом, разработчики браузеров со временем добавляли слова в свои пользовательские агенты.

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

Пользы

Веб-серверы используют пользовательские агенты для различных целей, включая:

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

Боты для веб-сканирования также используют пользовательские агенты. Например, веб-сканер Google идентифицирует себя как:

Googlebot / 2.1 (+ http: //www.google.com/bot.html)

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

Веб-серверы также могут отдавать приказы определенным ботам (или всем ботам), используя файл robots.txt. Например, веб-сервер может указать конкретному боту, что он должен уйти, или сказать другому боту, чтобы он индексировал только определенные области веб-сайта. В файле robots.txt боты идентифицируются по строкам пользовательских агентов.

txt боты идентифицируются по строкам пользовательских агентов

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