Строки пользовательских агентов всех популярных браузеров, даже Internet Explorer, начинаются с Mozilla/
. Почему это так?
Строки пользовательских агентов всех популярных браузеров, даже Internet Explorer, начинаются с Mozilla/
. Почему это так?
Ответы:
Это длинная и грустная история .
В итоге:
Mozilla/1.0 (Win3.1)
. Он публично переименован в Netscape, но в своем User-Agent он сохраняет свое первоначальное имя.Mozilla/
потому что веб-серверы обычно перехватывали браузер и обслуживали страницы с фреймами - функция, поддерживаемая как Netscape, так и IE, но не другими браузерами той эпохи, - только для Netscape.Mozilla/
, как это делали браузеры до этого. В результате появляется множество других глупостей, например, современный пользовательский агент Chrome, который одновременно претендует на звание Mozilla, Chrome, Safari и «как Gecko».Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.1
.
userAgent
String такой беспорядок, то почему он не устарел и / или не удален?
Я думаю, что это было связано с: http://en.wikipedia.org/wiki/User_agent#User_agent_spoofing
Еще в первые дни Netscape (кодовое имя Mozilla) был основным конкурентом IE, и они хотели предотвратить отклонение сайтов, отклоняющих браузеры, кроме Netscape.
Как упомянул @Jason "Это длинная история". Подводя итог этой истории, «каждый браузер притворяется Mozilla»
Попробовав все, я наконец-то воспользовался: http://www.useragentstring.com/
Вы можете использовать вышеуказанный веб-сайт, чтобы получить отформатированный пользовательский агент и ОС.
У них есть API, который вы можете использовать напрямую ...
Причиной этому являются печально известные браузерные войны .
Короче говоря, браузеры начали выдавать себя за какой-то другой браузер, потому что некоторые сайты обслуживали контент, основываясь на том, какой браузер запрашивал его, и они также хотели контент, предназначенный для других браузеров.
Я нахожу удивительным, что до сих пор не решена. Так как userAgent
не может быть безопасно удалено по устаревшим причинам, почему не была введена какая-то новая функция, четко идентифицирующая браузер? Да, в большинстве случаев вам не нужно обнаружение в браузере, а скорее обнаружение функций, но это не встроенный JS!
Mozilla / 5.0 - это общий маркер, который говорит, что браузер совместим с Mozilla, и сегодня он распространен почти во всех браузерах. для более подробной информации нажмите здесь