Startseite » wie man » Was ist ein User Agent eines Browsers?

    Was ist ein User Agent eines Browsers?

    Ihr Browser sendet seinen Benutzeragenten an jede Website, zu der Sie eine Verbindung herstellen. Wir haben bereits über das Ändern des Benutzeragenten Ihres Browsers geschrieben - aber was genau ist eigentlich ein Benutzeragent?

    Ein Benutzeragent ist eine "Zeichenfolge", dh eine Textzeile, die den Browser und das Betriebssystem für den Webserver identifiziert. Das klingt einfach, aber Benutzeragenten haben sich im Laufe der Zeit zu einem Chaos entwickelt.

    Die Grundlagen

    Wenn Ihr Browser eine Verbindung zu einer Website herstellt, enthält er ein User-Agent-Feld in seinem HTTP-Header. Der Inhalt des User Agent-Felds ist von Browser zu Browser unterschiedlich. Jeder Browser verfügt über einen eigenen, eindeutigen Benutzeragenten. Im Wesentlichen ist ein Benutzeragent eine Möglichkeit für einen Browser, einem Webserver „Hallo, ich bin Mozilla Firefox unter Windows“ oder „Hallo, ich bin Safari auf einem iPhone“ zu sagen.

    Der Webserver kann diese Informationen verwenden, um verschiedene Webseiten für verschiedene Webbrowser und unterschiedliche Betriebssysteme bereitzustellen. Eine Website könnte beispielsweise mobile Seiten an mobile Browser senden, moderne Seiten an moderne Browser und eine Meldung "Bitte aktualisieren Sie Ihren Browser" an Internet Explorer 6.

    Benutzeragenten untersuchen

    Hier ist zum Beispiel der Benutzeragent von Firefox unter Windows 7:

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

    Dieser Benutzeragent teilt dem Webserver einiges mit: Das Betriebssystem ist Windows 7 (Codename Windows NT 6.1), es ist eine 64-Bit-Version von Windows (WOW64) und der Browser selbst ist Firefox 12.

    Schauen wir uns nun den Benutzeragenten von Internet Explorer 9 an.

    Mozilla / 5.0 (kompatibel; MSIE 9.0; Windows NT 6.1; WOW64; Trident / 5.0)

    Die Benutzeragentenzeichenfolge identifiziert den Browser als IE 9 mit der Trident 5-Rendering-Engine. Sie können jedoch etwas Verwirrendes entdecken - IE identifiziert sich als Mozilla.

    Wir werden in einer Minute darauf zurückkommen. Lassen Sie uns zunächst auch den Nutzeragenten von Google Chrome untersuchen:

    Mozilla / 5.0 (Windows NT 6.1; WOW64) AppleWebKit / 536.5 (KHTML, wie Gecko) Chrome / 19.0.1084.52 Safari / 536.5

    Die Handlung wird dicker: Chrome gibt vor, sowohl Mozilla als auch Safari zu sein. Um zu verstehen, warum, müssen wir den Verlauf von Benutzeragenten und Browsern untersuchen.

    Die Zeichenfolge des Benutzeragenten

    Mosaic war einer der ersten Browser. Die Zeichenfolge des Benutzeragenten lautete NCSA_Mosaic / 2.0. Später kam Mozilla hinzu (später in Netscape umbenannt) und sein Benutzeragent war Mozilla / 1.0. Mozilla war ein fortgeschrittener Browser als Mosaic - insbesondere wurden Frames unterstützt. Webserver haben geprüft, ob der Benutzeragent das Wort Mozilla enthielt, und sendete Seiten mit Frames an Mozilla-Browser. An andere Browser haben Webserver die alten Seiten ohne Frames gesendet.

    Schließlich kam Microsofts Internet Explorer hinzu und unterstützte auch Frames. Der IE hat jedoch keine Webseiten mit Frames erhalten, da Webserver diese lediglich an Mozilla-Browser gesendet haben. Um dieses Problem zu beheben, fügte Microsoft dem Benutzeragenten das Wort Mozilla hinzu und fügte zusätzliche Informationen hinzu (das Wort "kompatibel" und einen Verweis auf den IE.). Webserver freuten sich, das Wort Mozilla zu sehen, und schickten IE die modernen Webseiten. Andere Browser, die später kamen, machten dasselbe.

    Schließlich suchten einige Server nach dem Wort Gecko - der Rendering-Engine von Firefox - und boten Gecko-Browsern andere Seiten als ältere Browser. KHTML - ursprünglich für Konquerer auf dem KDE-Desktop von Linux entwickelt - fügte die Worte "like Gecko" hinzu, sodass auch die modernen Seiten für Gecko erstellt wurden. WebKit basierte auf KHTML - bei der Entwicklung wurde das Wort WebKit hinzugefügt und die ursprüngliche Zeile "KHTML, like Gecko" wurde aus Kompatibilitätsgründen beibehalten. Auf diese Weise fügten Browser-Entwickler ihren Benutzeragenten im Laufe der Zeit immer wieder Wörter hinzu.

    Webserver interessieren sich nicht wirklich für die genaue Zeichenfolge des Benutzeragenten. Sie prüfen lediglich, ob sie ein bestimmtes Wort enthalten.

    Verwendet

    Webserver verwenden Benutzeragenten für verschiedene Zwecke, einschließlich:

    • Verschiedene Webseiten für verschiedene Webbrowser bereitstellen. Dies kann zum Guten genutzt werden, z. B. um einfachere Webseiten für ältere Browser bereitzustellen, oder böse, um beispielsweise die Meldung "Diese Webseite muss im Internet Explorer angezeigt werden" anzuzeigen.
    • Anzeige unterschiedlicher Inhalte für unterschiedliche Betriebssysteme - beispielsweise durch Anzeigen einer abgespeckten Seite auf mobilen Geräten.
    • Erfassen von Statistiken, die die von ihren Benutzern verwendeten Browser und Betriebssysteme anzeigen. Wenn Sie jemals Statistiken zum Marktanteil des Browsers erhalten, werden sie auf diese Weise erworben.

    Web-Crawler-Bots verwenden auch Benutzeragenten. Beispielsweise identifiziert sich der Web-Crawler von Google als:

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

    Webserver können Bots speziell behandeln, z. B. indem sie die obligatorischen Registrierungsbildschirme zulassen. (Ja, dies bedeutet, dass Sie manchmal die Registrierungsbildschirme umgehen können, indem Sie Ihren User Agent auf Googlebot setzen.)

    Webserver können mithilfe der Datei robots.txt auch bestimmten Bots (oder allen Bots) Befehle erteilen. Zum Beispiel kann ein Webserver einem bestimmten Bot mitteilen, dass er gehen soll, oder einem anderen Bot, nur bestimmte Bereiche der Website zu indizieren. In der Datei robots.txt werden die Bots anhand ihrer Benutzeragentenzeichenfolgen identifiziert.


    Alle gängigen Browser enthalten Möglichkeiten zum Festlegen benutzerdefinierter Benutzeragenten, damit Sie sehen können, welche Webserver an verschiedene Browser senden. Stellen Sie Ihren Desktop-Browser beispielsweise auf die Benutzer-Agent-Zeichenfolge eines mobilen Browsers ein und Sie sehen die mobilen Versionen von Webseiten auf Ihrem Desktop.