it-swarm.com.de

Welcher Browser sendet User Agent ab Mozilla / 5.0 +, fährt in Amp;

Wir haben eine Website, die seit einigen Jahren läuft. Einer unserer Kunden hat gerade ein zeitweise auftretendes Problem. Wenn Sie sich unsere iis6.0-Protokolle ansehen, funktioniert der Dienst ordnungsgemäß, wenn ein Benutzeragent mit "mozilla/4.0 +" beginnt, der jedoch fehlschlägt, wenn der Benutzeragent mit "mozilla/5.0 +" beginnt. Der bestimmte Kunde hatte dieses Problem erst am Mittwoch.

Kennt jemand den Browser/das Upgrade, das die Version 4.0 auf 5.0 ändert?

Das eigentliche Problem ist, dass ein "" in einer URL-Parameterliste als "amp;" codiert wird. Hat jemand etwas ähnliches gesehen?

Wir haben andere Benutzer, die problemlos von Browsern mit dem Benutzeragenten 5.0+ senden.

Entschuldigen Sie die Tags, aber Sie können keine neuen Tags erstellen.

Vielen Dank im Voraus, Patrick

Edit: hi Viper_sb,

Es ist höchstwahrscheinlich ein benutzerdefiniertes Skript (ich bin in erster Linie ein C++ - Entwickler, verstehe das also nicht wirklich). Unsere Site-Services-Anfragen von anderen von Kunden entwickelten Sites wurden meines Wissens nach in Java -Skript ausgeführt.

wir erhalten tatsächlich eine Vielzahl von Benutzeragenten (vermutlich abhängig davon, welcher unserer Kunden auf den Service zugreift). Hier einige:

Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+fr;+rv:1.9.1.11)+Gecko/20100701+Firefox/3.5.11
Mozilla/5.0+(Windows;+U;+Windows+NT+5.1;+en-US)+AppleWebKit/533.4+(KHTML,+like+Gecko)+Chrome/5.0.375.126+Safari/533.4 302 0 0
Mozilla/5.0+(Macintosh;+U;+PPC+Mac+OS+X;+fr)+AppleWebKit/523.12+(KHTML,+like+Gecko)+Version/3.0.4+Safari/523.12
Mozilla/5.0+(Windows;+U;+Windows+NT+5.1;+en-US;+rv:1.9.2.8)+Gecko/20100722+Firefox/3.6.8
Mozilla/5.0+(Windows;+U;+Windows+NT+5.1;+fr;+rv:1.9.2.8)+Gecko/20100722+Firefox/3.6.8+(.NET+CLR+3.5.30729)
1
Patrick

Firefox 3.x und viele andere tun dies.

Können Sie den vollständigen Agentenstring posten, mit dem Sie Probleme haben? Wie es sich anhört, könnte es sich um ein benutzerdefiniertes Skript handeln, das die Anforderung generiert und vorgibt, ein bestimmter Agent zu sein. Erstellt aber fälschlicherweise den Ident-String. Oder Ihre Prüfung gegen die Agentenzeichenfolge ist falsch.

Bearbeiten: Die von Ihnen geposteten Zeichenfolgen werden url-codiert. Die darin enthaltenen Pluszeichen sollten Leerzeichen sein. Ich bin mir nicht sicher, wo das Problem liegt, ob es auf Ihrer Javascript-Seite liegt oder ob der Benutzer die Site besucht.

Ich gehe hier raus und vermute, dass Ihr Javascript die Agentenzeichenfolge dekodiert. Dies sollte nicht passieren (es sei denn, Sie machen eine URL daraus oder veröffentlichen sie auf Ihrer Website).

2
Viper_Sb

Ich vermute, der + in den UA-Zeichenfolgen liegt daran, wie IIS ihn protokolliert.

Wollen Sie damit klarstellen, dass Sie Abfragezeichenfolgen in Links auf der Site haben und dass einige UAs Anforderungen für diese URLs stellen, jedoch & anstelle von & verwenden?

Wenn dies der Fall ist, ist die wahrscheinlichste Ursache ein überaus dummer Bot, der seine UA-Zeichenfolge fälscht. Jeder ordnungsgemäß geschriebene HTML-Code sollte das & in der URL als & codieren. Ein richtiger Browser und ein vernünftiger Bot wurden korrekt erstellt und wissen, dass Sie http://example.com/?a=1&b=2 meinen, wenn Sie in Ihrem Quellcode auf /?a=1&b=2 verlinken. Jegliche andere href wörtlich zu nehmen, zeigt keine Probleme, aber diese wörtlich zu nehmen würde das Verhalten zeigen, von dem ich denke, dass Sie es beschreiben.

Ich erhalte alle möglichen Anfragen für Seiten, die nicht dort vorhanden sind, wo sie angefordert wurden, sondern woanders, und das liegt normalerweise daran, dass der Bot solche Dinge wie Basispfade nicht verarbeiten konnte (nicht meine Aufgabe - OpenCart verwendet sie aus irgendeinem Grund) oder absolute URLs oder URLs auf anderen Hosts (es nimmt den Pfadteil, aber nicht den Host).

Ein guter Indikator besteht darin, eine rDNS-Suche auf der IP durchzuführen. Wenn einer oder mehrere von ihnen zu einem Webhost zurückkehren, führt jemand ein Bot/Dumb-Skript aus.

1
IBBoard