User Agent
Ein User Agent ist ein Client-Programm, mit dem ein Netzwerkdienst genutzt werden kann. Der User Agent ist die Schnittstelle zum Benutzer, die die Inhalte darstellt und Befehle entgegennimmt. Beispiele für User Agents sind Webbrowser, E-Mail-Programme, Newsreader und IRC-Clients.
Viele User Agents übertragen ihren Namen in Header-Zeilen bei Anfragen (Requests) an den Server. Der Begriff „User Agent“ wird dadurch auch als Synonym für diesen Parameter in einem HTTP-Header benutzt.
Inhaltsverzeichnis |
[Bearbeiten] Webbrowser
Einige Beispiele zu Headern von verschiedenen User Agents von Webbrowsern:
Lynx/2.8.4rel.1 libwww-FM/2.14 SSL-MM/1.4.1 OpenSSL/0.9.6c Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0) Mozilla/4.77 [en] (X11; I; IRIX;64 6.5 IP30) Mozilla/5.0 (compatible; Konqueror/3.2; Linux 2.6.2) (KHTML, like Gecko) Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en) AppleWebKit/125.2 (KHTML, like Gecko) Safari/125.8 Mozilla/5.0 (OS/2; U; Warp 4.5; de; rv:1.8.1.11) Gecko/20071129 PmWFx/2.0.0.11 Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.A.B.C Safari/525.13 Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.0.10) Gecko/2009042316 Firefox/3.0.10 Mozilla/5.0 (X11; U; Linux i586; en-US; rv:1.7.3) Gecko/20040924 Epiphany/1.4.4 (Ubuntu) Opera/9.80 (Macintosh; Intel Mac OS X; U; en) Presto/2.2.15 Version/10.00
Oft benutzen Webserver diese User-Agent-Header, um zu entscheiden, welche Version einer Webseite dem Webbrowser zur Verfügung gestellt wird. Dies ist manchmal nötig, da manche Browser nicht alle Möglichkeiten von CSS und JavaScript unterstützen oder aufgrund mangelnder W3C-Konformität manche Webseiten anders darstellen, als vom Autor der Webseiten vorgesehen (siehe Browserweiche).
Die meisten Browser erlauben es, einen benutzerdefinierten User-Agent-Header zu übertragen.
[Bearbeiten] Mobilfunkgeräte
Im Gegensatz zu den PC-Webbrowsern übermitteln die Mobilfunkgeräte zusätzliche Informationen im User-Agent, wie Firmware-Version des Gerätes, Browser-Typ und Version, oder Unterstützung von Java (J2ME). Später ging man dazu über, zusätzliche Informationen in das UAProf (User Agent Profile) auszugliedern.
Beispiele:
BlackBerry8520/5.0.0.681 Profile/MIDP-2.1 Configuration/CLDC-1.1 VendorID/114 LG/KU800/v1.0 Profile/MIDP-2.0 Configuration/CLDC-1.1 MOT-E1000/80.28.08I MIB/2.2.1 Profile/MIDP-2.0 Configuration/CLDC-1.1 Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A543a Safari/419.3 Mozilla/5.0 (Linux; U; Android 2.2; de-de; HTC Magic Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 NokiaN73-1/2.0626.0.0.2 S60/3.0 Profile/MIDP-2.0 Configuration/CLDC-1.1 SHARP-TQ-GX30i/1.0 Profile/MIDP-1.0 Configuration/CLDC-1.0 UP.Browser/6.2.2.6.c.1.104 (GUI) SIE-SL65/25 UP.Browser/7.0.0.1.c.3 (GUI) MMP/2.0 Profile/MIDP-2.0 Configuration/CLDC-1.1 SonyEricssonT68/R201A
[Bearbeiten] E-Mail-Programme
Da der User-Agent-Header-Eintrag bereits in RFC 1945 für das Hypertext Transfer Protocol festgelegt ist, wird dieser Standard auch in E-Mail-Headern bzw. von E-Mail-Programmen verwendet. Header-Einträge, welche mit einem „X-“ beginnen sind allerdings nicht standardisiert und müssen somit keiner strikten Konvention genügen.
Beispiele:
User-Agent: Microsoft Outlook IMO, Build 9.0.6604 (9.0.2911.0) User-Agent: Mutt/1.5.13 (2006-08-11) User-Agent: Thunderbird 1.5.0.7 (X11/20060927)
X-Mailer: Sylpheed version 0.9.6claws (GTK+ 1.2.10; i386-pc-linux-gnu) X-Mailer: T-Online eMail 5.00.0027 X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
[Bearbeiten] Suchmaschinen
Suchmaschinen benutzen für gewöhnlich eigene User-Agent-Header.
Beispiele:
Mozilla/2.0 (compatible; Ask Jeeves/Teoma) Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp) msnbot/1.0 (+http://search.msn.com/msnbot.htm)
Mittels Browserweichen können dadurch in Suchmaschinen andere Informationen über den Inhalt einer Webseite eingetragen werden (Cloaking), z. B. um für mehr Werbeeinnahmen durch Bannerwerbung die Zugriffszahl zu erhöhen.
[Bearbeiten] Newsreader
Newsreader werden oft nicht im „User-Agent: “-Header, sondern in Headern mit Bezeichnungen wie „X-Newsreader: “ o. Ä. übertragen.
Beispiele:
User-Agent: 40tude_Dialog/2.0.8.1de
User-Agent: KNode/0.7.2
User-Agent: tin/1.7.2-20031104 ("Eriskay") (UNIX) (Linux/2.4.18-1-686 (i686))
X-Newsreader: Forte Agent 1.8/32.553
Außer für Statistiken haben diese Header kaum eine Funktion.
[Bearbeiten] Weblinks
- user-agent-string-history Die Geschichte des user-agent-string der verschiedenen Browser
- useragentstring.com mit Erklärungen der einzelnen Stringbestandteile