browserversion ermitteln
lois
- perl
hi,
gibt es irgendeine standardmethode wie man die browserversion + betriebssystem ermitteln kann?
ist das format der $ENV{'HTTP_USER_AGENT'} überhaubt standardisiert?
ich hab im internet nur das gefunden:
# Browser & Version ermitteln
for (@$line[9]) {
$Browser = /MSIE 2/i && "Internet Explorer 2.x"
|| /MSIE 3/i && "Internet Explorer 3.x"
|| /MSIE 4/i && "Internet Explorer 4.x"
|| /MSIE 5/i && "Internet Explorer 5.x"
|| /MSIE 6/i && "Internet Explorer 6.x"
|| /MSIE/i && "Internet Explorer x.x"
|| /Netscape6/i && "Netscape Navigator 6.x"
|| /Mozilla/2/i && "Netscape Navigator 2.x"
|| /Mozilla/3/i && "Netscape Navigator 3.x"
|| /Mozilla/4/i && "Netscape Navigator 4.x"
|| /Mozilla/5/i && "Netscape Navigator 6.x"
|| /Netscape/i && "Netscape Navigator x.x"
|| "unbekannt";
}
# Betriebssystem & Version ermitteln
for (@$line[9]) {
$os = /Mac/i && "Macintosh"
|| /Win(dows )?3/i && "Windows 3.x"
|| /Win(dows )?95/i && "Windows 95"
|| /Win(dows )?98/i && "Windows 98"
|| /Win(dows )?NT 3/i && "Windows NT 3.x"
|| /Win(dows )?NT 4/i && "Windows NT 4.x"
|| /Win(dows )?NT 5.0/i && "Windows 2000"
|| /Win(dows )?NT 5.1/i && "Windows XP"
|| /Win(dows )?NT/i && "Windows NT x.x"
|| /Linux/i && "Linux"
|| /HP-UX/i && "HP-UX"
|| /SunOS/i && "SunOS"
|| "unbekannt";
}
gibt es da keine allgemeine lösung?
lg, lois.
Hi,
gibt es irgendeine standardmethode wie man die browserversion + betriebssystem ermitteln kann?
Nein.
ist das format der $ENV{'HTTP_USER_AGENT'} überhaubt standardisiert?
Nein.
Verlasse dich niemals darauf, als was sich ein Browser ausgibt, sondern auf das, was er kann. Mit dem UserAgent zu arbeiten, ergibt bestenfalls einen Näherungswert.
LG Roland
Hallo,
ist das format der $ENV{'HTTP_USER_AGENT'} überhaubt standardisiert?
Wie Orlando schon gesagt hat, da kann jeder Browser übermitteln, was er gerne möchte. Oder er übermittelt gar nichts. Oder ein Proxy überschreibt den Wert des Browsers, ...
Wenn du einen der aktuelleren Browser (IE, Mozilla, NS4, Opera) erkennen willst, dann kannst du nur über die Unterstützungen der Scripttechniken gehen. Dazu findest du sicher genügend Beispiele.
Serverseitig wirst du das nicht hinbekommen.
Viele Grüße,
Stefan
use Mosche;
gibt es irgendeine standardmethode wie man die browserversion + betriebssystem ermitteln kann?
gibt es da keine allgemeine lösung?
Die gibt es nicht, weil man den UserAgent String bei fast allen Browsern direkt manipulieren kann und die Informationen, die sich dahinter verbergen, größtenteils folgendermaßen lauten:
Das ist ein User mit diesem Browser, oder er benutzt einen anderen.
(Ich bin Tautologe, ich weiß :-))
use Tschoe qw(Matti);