Jörg Kruse Internet-
Programmierungen

Browserkennung (User-Agent-String)

Bei einer Anfrage an einen Webserver sendet ein Webbrowser oder ein Suchmaschinenbot im HTTP-Header für gewöhnlich auch einen User-Agent-String, anhand dessen er identifiziert werden kann. Die Browserkennung kann man sich u.a. auf dieser Seite anzeigen lassen. Weiterführende Fragen zu den HTTP-User-Agent-Kennungen können in meinem Forum zur Traffic-Analyse gestellt werden.

1. Netscape

Die Browser-Kennung des alten Netscape Navigator enthielt bis einschließlich Version 4.80 seinen Code-Namen „Mozilla“, Beispiel für Netscape 3.01 Gold auf Mac OS:


Mozilla/3.01Gold (Macintosh; I; 68K)

Da Netscape in der zweiten Hälfte der Neunziger Jahre eine marktbeherrschende Stellung auf dem Browser-Markt innehatte, gaben anderen Browser im User-Agent-String an, zu welcher Netscape Version sie sich als kompatibel ansehen, so auch beim seinerzeit größten Konkurrenten Internet Explorer. Die letzte Version des alten Netscape mit der Versionsnummer 5 wurde nicht zuende entwickelt. Die Browserkennung Mozilla/5.0 übernahm der Nachfolge-Browser Mozilla, auf dem auch die neueren Netscape Versionen 6 und 7 basierten. Der Zwitter Netscape 8 schließlich benutzte wahlweise den Gecko-Browser Mozilla Firefox oder den Internet Explorer als Unterbau, und somit auch die jeweilige Browserkennung.

2. Internet Explorer

Da Ende der Neunziger Jahre der Netscape Navigator den Browser-Markt noch dominierte, gab der Internet Explorer als erstes an, zu welcher Netscape-Version der Microsoft Browser kompatibel ist, das eigentliche Kennzeichen des Internet Explorers „MSIE“ folgte in Klammern erst an zweiter Stelle. So sah sich z.B. der Internet Explorer 3.0 kompatibel zu Netscape 2.0:


Mozilla/2.0 (compatible; MSIE 3.0; Windows 95) 	Internet Explorer 3.0 	Windows 95

Bis Version 8.0 gab der Internet Explorer immer noch eine Kompatibilität zu Netscape 4 an, obwohl er diesen zwischenzeitlich sowohl in technischer Hinsicht als auch vom Marktanteil weit hinter sich gelassen hat. Ab Version 8.0 wurde auch die Version der Browser-Engine Trident angegeben:


Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0)

Ab Version 9.0 beginnt die Browserkennung mit „Mozilla/5.0“. Der Internet Explorer 11 schließlich lässt die Kennung „MSIE“ weg, so dass der Browser nur noch an der Trident-Version 7.0 und an der Versionsnummer hinter „rv:“ identifizierbar ist:


Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko

3. Mozilla, Mozilla Firefox u.a.

Mozilla hatte als Nachfolger von Netscape die Kennung Mozilla/5.0 übernommen. Die Versionsangabe erfolgte dann hinter dem Kürzel rv, am Ende wurde die Version der Browser-Engine Gecko angegeben, so z.B. Mozilla 1.2.1:


Mozilla/5.0 (X11; U; Linux i686; de-AT; rv:1.2.1) Gecko/20021204

Andere Gecko-Browser wie Mozilla Firefox haben dann ihren Namen und ihre eigene Versionsnummer eingefügt, so z.B. Firefox 63.0:


Mozilla/5.0 (X11; Linux x86_64; rv:63.0) Gecko/20100101 Firefox/63.0

4. Konqueror, Safari u.a.

Der Browser des KDE-Projekts, Konqueror, vermerkte eine Ähnlichkeit seiner Browser-Engine KHTML zu Mozillas Engine Gecko, wie z.B. Konqueror 3.5:


Mozilla/5.0 (compatible; Konqueror/3.5; Linux) KHTML/3.5.5 (like Gecko).

Safari, dessen Browser-Engine Webkit auf Basis von KHTML entwickelt wurde, übernahm diese Angaben, wie z.B. Safari 11.0:


Mozilla/5.0 (iPhone; CPU iPhone OS 11_0_1 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A402 Safari/604.1

Die eigentliche Versionsangabe von Safari findet sich hinter dem Schlüsselwort „Version“, bei der Versionsnummer hinter dem Namen „Safari“ handelt es sich um eine Build-Nummer.

5. Google Chrome

Google Chrome nutzte anfangs Safaris Webkit-Engine, und fügte dessen User-Agent-String noch den Namen Chrome mit eingener Versionsnummer hinzu, so z.B. Chrome 0.2:


Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.2.149.27 Safari/525.13

Ab Version 28 verwendet Chrome die zwar eigene Engine Blink, dessen Entwicklung von Webkit abgespalten wurde, diese findet allerdings keine Erwähnung in der Browserkennung, so z.B. im Falle von Chrome 62:


Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.9 Safari/537.36

6. Opera

Opera identifizierte sich bis Version 12.1 über die Browser-Kennung Opera; alternativ konnte auch der User-Agent-String anderer Browser übermittelt werden, wahlweise mit dem Zusatz Opera. Ab Version 9.60 wurde zusätzlich die Version der Rendering-Engine Presto aufgeführt.


Opera/9.60 (X11; Linux i686; U; de) Presto/2.1.1

Ab Version 15 verwendet Opera Googles Engine Blink sowie dessen User-Agent-String, wobei Opera sich darin mit dem Kürzel OPR zu erkennen gibt, Beispiel Opera 57.0:


Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36 OPR/57.0.3098.76

7. Edge

Microsofts Browser Edge trat die Nachfolge des Internet Explorers an, die neue Browser-Engine Edge ersetzte dabei Trident. Edge übernimmt den User-Agent-String einer Chrome-Version, zu der sich der Browser als kompatibel ansieht, und fügt seinen eigenen Namen und Versionsnummer hinten an, so z.B. Edge 15:


Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36 Edge/15.15063