Ich habe den PS3-Browser (NetFront) mit eingebetteten Flash-Komponenten auf einer Webseite getestet, und es scheint einen ziemlich schwerwiegenden Fehler in der Art und Weise zu geben, wie Anfragen von Flash ausgegeben werden. Der Browser fügt einen Referrer (Verweiser) hinzu, ebenso wie der Flash-Player, was zu doppelten Headern führt. Das ist eigentlich in Ordnung, wenn die Referrer-Header identisch sind, aber das sind sie nicht, und als Ergebnis wird die Anfrage von http.sys auf W2k8 gestoppt. Dies ist ein großes Problem für mich, da ich eine Flash-Komponente habe, die Webdienste aufrufen muss, um zu funktionieren.
Gibt es eine Möglichkeit, diese Anfragen zu filtern oder durchzulassen und dabei möglicherweise die doppelten Kopfzeilen zu entfernen?
Einige Lösungen, an die wir gedacht haben, die aber entweder suboptimal oder mit unserer Entwicklungs- und Live-Umgebung nicht möglich sind, sind:
- Hinzufügen eines Proxys vor den Servern, um die Anfrage zu bereinigen.
- Behebung der Anfrage bei unseren Lastverteilern. Dies kann in unserer Live-Umgebung funktionieren, aber nicht in der Entwicklungsumgebung. Außerdem ist die Verwendung eines Load Balancers zur Durchführung dieser Operation eine schlechte Praxis, unser Betriebsteam wäre nicht erfreut :)
- Senden Sie alle Daten während der Initialisierung über flashvars an das Flash. Möglicherweise werden alle Aktualisierungen/Rückrufe über Javascript durchgeführt. Dies fühlt sich chaotisch und ist würde erhebliche benutzerdefinierte Code für eine Plattform erfordern.
- Verhindern Sie, dass der Browser oder Flash Referrer-Header sendet. Dies wäre akzeptabel, aber es scheint keine Möglichkeit zu geben, dies in Flash oder NetFront zu aktivieren.
Mit der folgenden Anfrage können Sie das Problem reproduzieren (kopieren und in Fiddler oder ein anderes Tool einfügen; ich gehe davon aus, dass Sie wie wir IIS7, W2K8 verwenden). Sie sollten eine 400 Bad Request
Antwort.
GET / HTTP/1.1
Host: localhost
Referer: http://localhost/NetFrontBrowser/
Referer: http://localhost/Flash/
Vielen Dank!