|
|||
![]()
Hallo zusammen!
Ich bin auf ein eigenartiges Phänomen gestoßen. Ich würde mich über Kommentare und Lösungsvorschläge freuen. Ich öffne im Firefox eine PHP-Seite (index.php), die eine Session benutzt (z.B. zum Festhalten von Logindaten). Diese PHP-Seite enthält ein JavaScript, das bei Ausführung (sofort) den Seiteninhalt mittels XMLHttpRequest um nachgeladenen Inhalt erweitert (nachladen.php). Dazu wird in der nachladen.php ebenfalls auf die Sessiondaten zurückgegriffen (ID über Cookie). Der XMLHttpRequest wird synchron abgesetzt, blockiert also die weitere Skriptausführung. Die PHP-Seite beinhaltet zudem ein Bild, das dynamisch von einem weiteren PHP-Skript (bild.php) aus einer Datenbank geladen wird. Um die Zugriffsberechtigung festzustellen, wird der erfolgreiche Login über die bereits bekannte Session (ID über Cookie oder URL) überprüft. Die Reaktion von Firefox (2.0.0.15 Linux/Ubuntu, 2.0.0.12 Windows) ist nun, dass er komplett hängt, bis der Timeout meines Apache-Webservers abgelaufen ist. Die Einstellung network.http.keep-alive.timeout (über about:config) hat hierauf scheinbar keine Auswirkung. Nachdem das Timeout nun abgelaufen ist, zeigt Firefox das Bild i.d.R. nicht vollständig an und das Ergebnis des JavaScripts ist meist auch nicht verfügbar. Eine anschließende Betrachtung mit FireBug zeigte, dass sich teilweise Daten des Bildes zu Beginn der Antwort eines XMLHttpRequest befanden, woraufhin erst der HTTP-Header und der Datenteil des XMLHttpRequest folgten. Wohlgemerkt alles als einzige Antwort, angeblich auf den XMLHttpRequest. Dann ist auch klar, dass das Ergebnis des XMLHttpRequests nicht korrekt durch das Skript weiterverarbeitet werden kann. Leider kann ich FireBug diese Informationen nicht mehr entlocken, dort scheint alles in Ordnung zu sein. Das Problem tritt im Übrigen auch auf, wenn FireBug nicht installiert/deaktiviert ist (Lukav’s Weblog Blog Archive Firefox firebug and synchronos calls problem). Benutzt das PHP-Skript zum Laden des Bildes keine Session, so scheint dieses Problem nicht zu existieren. Auch eine Änderung der Session-ID über session_regenerate_id(), nachdem alle relevanten Informationen aus der eigentlichen Session geholt wurden, kann keine Abhilfe schaffen. Das Mitschicken von Headerinformationen in der Bild-Antwort hat scheinbar keinen Einfluss. Rufe ich den neuen Inhalt aus dem JavaScript nicht synchron sondern asynchron ab, tritt das Problem scheinbar ebenfalls nicht auf. Sporadisch hängt der Firefox auch mal nicht. Das kann dann auch gleich zig Male am Stück sein. Das Problem taucht jedoch früher oder später immer wieder auf. Was mich nun besonders wundert, ist die Vermischung der Antworten von dem nachgeladenen Inhalt und des Bildes, sowie der Einfluss Session/Nicht-Session bei der Ausgabe des "dynamischen Bildes". Um das eigentliche Problem herauszustellen, habe ich meine Anwendung auf das Wesentliche reduziert und am Ende dieses Posts angehängt. Über einige Antworten würde ich mich freuen. MfG Kristian Server: Linux/Ubuntu 7.10 Desktop www: Apache/2.2.4 (Ubuntu) PHP: PHP 5.2.3-1ubuntu6.3 (cli) (built: Jan 10 2008 09:38:37) MySQL: mysql Ver 14.12 Distrib 5.0.45, for pc-linux-gnu (i486) using readline 5.2 Getestete Browser: Firefox 2.0.0.15, Linux/Ubuntu: Problem vorhanden Firefox 2.0.0.12, Windows: Problem vorhanden Firefox 3.0.1, Linux/Ubuntu: Problem nicht vorhanden Firefox 3.0.1, Windows: Problem nicht vorhanden Opera 9.27, Linux/Ubuntu: Problem nicht vorhanden =========== index.php ============ PHP-Code:
PHP-Code:
PHP-Code:
|
Sponsored Links |
|
|||
![]()
Hallo!
Das mit den Headern habe ich bereits versucht (s.o.) und verwende es auch. Um das Beispiel möglichst einfach zu halten, habe ich es jedoch weggelassen. Ein nachgeladenes Bild interpretiert mein Firefox jedoch mit und ohne Header korrekt und zeigt es an. Probleme gibt es nur, wenn das Nachladen parallel zu einem blockierenden XMLHTTPRequest geschieht. Die Daten dürften sich auch bei fehlender Headerinformation nicht vermischen. Kristian |
![]() |
Stichwörter |
bild, firefox, php, session, synchron, xmlhttprequest |
Themen-Optionen | |
Ansicht | |
|
|
![]() |
||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
Firefox - negativer z-index und generated content? | shredder01 | CSS | 2 | 10.03.2011 14:29 |
Benötige dringend Hilfe mit CSS in Firefox & IE :( | r4m0n | CSS | 3 | 20.03.2009 11:12 |
Firefox 1.5 Beta 1 | Pablo | Offtopic | 19 | 13.09.2005 18:56 |
IE reagiert nicht auf li hover im menü firefox problemlos | obp | CSS | 2 | 02.03.2005 20:17 |
Bitte testen mit Firefox und IE (Vergleich!) | Spider | Site- und Layoutcheck | 8 | 23.09.2004 22:38 |