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

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

Ответ 1

Это длинная и печальная история.

Вкратце:

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

Ответ 2

Я думаю, что это имело отношение к: http://en.wikipedia.org/wiki/User_agent#User_agent_spoofing

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

Ответ 3

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

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

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

Ответ 4

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

Ответ 5

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

Ответ 6

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

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

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