User Agent
aus Wikipedia, der freien Enzyklopädie
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.0 (compatible; MSIE 8.0; Windows NT 6.0; WOW64; Trident/4.0; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; OfficeLiveConnector.1.3; OfficeLivePatch.0.0; .NET CLR 3.5.30729; .NET CLR 3.0.30618) 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).
[Bearbeiten] Benutzerdefiniert
Die meisten Browser erlauben es, einen benutzerdefinierten User-Agent-Header zu übertragen:
- Im Internet Explorer ist dies durch eine Änderung in der Registrierungsdatenbank am Schlüssel HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\User Agent möglich[1]
- In Mozilla Firefox kann man in der about:config Datenbank den Wert general.useragent.override anpassen[2] oder das Add-on User-Agent-Switcher[3] benutzen.
- In Apple Safari Version 3.0 und niedriger kann man durch den Shellbefehl „defaults write com.apple.Safari IncludeDebugMenu 1“ ein zusätzliches Debug-Menü aktivieren, in dem der User-Agent-Header ausgewählt werden kann[4] Seit Version 3.1 ist dies auch in den Einstellungen unter 'Erweitert' → 'Menü „Develop“ in der Menüleiste einblenden' aktivierbar. Der Terminal-Befehl entfällt somit[5]
- In Opera gibt es in den Optionen, auf dem Registerreiter „Netzwerk“, eine Einstellung, die es ermöglicht, Opera als Internet Explorer 6.0 oder als Mozilla Firefox 2.0.0 zu tarnen. [6]
Seit der Version 10 hat Opera den User Agent in die Form Opera/9.80 abgeändert.[7]
[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:
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 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
- agentarius.net mehrsprachige User-Agent-Datenbank mit Community-Charakter und Web-Services
- useragentstring.com mit Erklärungen der einzelnen Stringbestandteile
[Bearbeiten] Einzelnachweise
- ↑ Benutzerdefinierter User-Agent-Header im Internet Explorer
- ↑ Benutzerdefinierter User-Agent-Header in Mozilla Firefox
- ↑ User Agent Switcher in Mozillas Add-On Seiten
- ↑ Benutzerdefinierter User-Agent-Header in Apple Safari
- ↑ Aktivieren des Debug-Menü in Apple Safari ab Version 3.1
- ↑ Benutzerdefinierter User-Agent-Header in Opera
- ↑ http://dev.opera.com/articles/view/opera-ua-string-changes/