Sven Rautenberg: opera identifikation

Beitrag lesen

Moin!

nun meldet sich opera laut voreinstellung mit msie5/6.
um genau zu sein steht da das drin (opera7final):
Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows NT 5.0) Opera 7.0  [en]
(frag mich nicht, was das "MSIE 6.0; MSIE 5.5" soll :-))
laut opera gibts eine voreinstellung:
Opera by default identifies itself as MSIE 5.0 - wird wohl jetzt 6 sein, die website von opera ist wohl noch nicht auf dem aktuellsten stand

"Server-side user-agent detection considered harmful!"

Wenn man nicht 100% sicher sein kann, dass das, was man da produziert hat, wirklich in 100% der Fälle hinhaut (und im Zweifel lieber auf der sicheren Seite irrt), dann sollte man auf der Serverseite _niemals_ Entscheidungen treffen, mit denen der Browser möglicherweise Probleme hat.

Ich habe bislang zwei Beispiele dafür gefunden, die belegen, dass es böse ist:
1. Das CMS-System Imperia (zumindest in Version 4) liefert basierend auf dem User-Agent entweder DHTML-Javascript-Code für den IE oder den Netscape aus. Das System versagt, wenn man den User-Agent verändert/unterdrückt oder (wie eben in Opera) auf unzutreffende Werte einstellt.

2. In Bugzilla wird, basierend auf dem User-Agent-String für Netscapes ab Version 3 (der Regex ist /Mozilla.[3-9]/) eine Technologie verwendet, die kein anderer Browser bislang versteht, weil sie als experimentell immer noch nicht etabliert ist: Server Push. Opera kriegt natürlich Schwierigkeiten, wenn es solche seltsamen Seiten geliefert kriegt, die mit dem Mime-Typ "multipart/x-mixed-replace" ausgeliefert werden. Sowas kann nur schieflaufen!

Insofern ist es absolut nicht ratsam, serverseitig auf den User-Agent zu reagieren.

wenn sie merken, so siehts nicht korrekt aus?
woher sollen sie merken dass etwas nicht korrekt aussieht?
naja, wenn das layout total zerschossen ist, bilder nur zur hälfte sichtbar, text winzig klein, ...
Tobias, stellst Du in einem solchen fall eine andere identifikation ein, um zu sehen, ob es so sein soll?

Ich stelle nichts um, weil ich nicht ahnen kann, dass es an dieser Browsereinstellung liegt. Wenn eine Seite Scheiße aussieht, öffne ich sie _vielleicht_ in einem anderen Browser - meistens gehe ich aber lieber ganz schnell wieder.

Mit anderen Worten: Du hast keine zweite Chance! Entweder deine Seite funktioniert, oder sie tut es nicht.

p.s. in opera 6 funktionierts, nur opera 7 macht schwierigkeiten
was mach schwierigkeiten?
nun ja, ein div überschneidet ein anderes, das jedoch nur in opera 7, wenn der sich als msie ausgibt.

Dann hast du möglicherweise den MSIE-Width-Bug zu fassen. Dafür gibt es Gegenmittel, indem man entweder gewisse CSS-Formatierungen dem IE vorenthält, oder DIVs geschickt schachtelt.

Ohne Code kann dazu aber keiner was sagen.

- Sven Rautenberg

--
"Bei einer Geschichte gibt es immer vier Seiten: Deine Seite, ihre Seite, die Wahrheit und das, was wirklich passiert ist." (Rousseau)