Почему пользовательские агенты всех браузеров начинаются с "Mozilla /"? - PullRequest
175 голосов
/ 11 июля 2009

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

Ответы [ 6 ]

239 голосов
/ 11 июля 2009

Это длинная и грустная история .

В итоге:

  1. Браузер Mozilla выпускается с User-Agent Mozilla/1.0 (Win3.1). Он публично переименован в Netscape, но в своем User-Agent он сохраняет свое первоначальное имя.
  2. Internet Explorer выпущен. Он подделывает Netscape, запуская его User-Agent с Mozilla/, потому что веб-серверы обычно перехватывали браузер и обслуживали страницы с фреймами - функция, поддерживаемая как Netscape, так и IE, но не другими браузерами того времени - только для Netscape.
  3. Со временем Gecko, Konqueror, Opera, Safari и Chrome решили аналогичным образом подделать User-Agent какого-то предыдущего браузера, чтобы манипулировать веб-страницами, отслеживающими браузер, для правильного понимания функций их браузера. В рамках этого спуфинга все браузеры запускают свои пользовательские агенты с Mozilla/, как это делали браузеры до этого. В результате появляется множество других глупостей, например, современный пользовательский агент Chrome, который одновременно претендует на звание Mozilla, Chrome, Safari и «как Gecko».
27 голосов
/ 11 июля 2009

Я думаю, что это было связано с: http://en.wikipedia.org/wiki/User_agent#User_agent_spoofing

В прежние времена Netscape (под кодовым названием Mozilla) был основным конкурентом IE, и они хотели предотвратить отклонение сайтов, отклоняющих браузеры, кроме Netscape.

7 голосов
/ 14 июня 2013

Как упомянул @Jason "Это длинная история". Подводя итог этой истории, «каждый браузер притворяется Mozilla»

Попробовав все, я наконец использовал: http://www.useragentstring.com/

Вы можете использовать вышеуказанный веб-сайт, чтобы получить отформатированный пользовательский агент и ОС.
У них есть API , который вы можете использовать напрямую ...

2 голосов
/ 11 июля 2009

Потому что именно так Netscape идентифицировал себя, и Microsoft хотела работать с сайтами, которые будут обнаруживать Netscape и отклонять все остальное.

0 голосов
/ 24 июня 2019

Причиной этого являются печально известные браузерные войны .

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

Мне кажется удивительным, что до сих пор не решена. Поскольку userAgent нельзя безопасно удалить по устаревшим причинам, почему не была введена какая-то новая функция, четко определяющая браузер? Да, в большинстве случаев вам не нужно обнаружение в браузере, а скорее обнаружение функций, но это не встроенный JS!

0 голосов
/ 05 июля 2017

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

...