Hallo,
ich bekomme in regelmäßigen Abständen in Flash -> PHP Requests vom Apache Seiten in denen die Content-length nicht gesetzt ist., Firebug zeigt diese als ? an.
habt ihr eine Idee warum dies geschieht?
_best,
T
Ankündigung
Einklappen
Keine Ankündigung bisher.
falsche content-length
Einklappen
Neue Werbung 2019
Einklappen
X
-
ich bin mir sicher, was jedoch glaube ich auch geholfen hat:
<cross-domain-policy>
<site-control permitted-cross-domain-policies="all"/>
<allow-http-request-headers-from domain="*" headers="*" /> <!-- // dies -->
<allow-access-from domain="*" />
<allow-access-from domain="*" />
</cross-domain-policy>
-
Bist du dir sicher, das Chrome wegen dem Content-Length streikt?
Wenn du den header sendest, sollte es keine Grund dazu geben.
Checke doch sonst auch mal andere Möglichkeiten, z.B. das XML was du sendest.
Einen Kommentar schreiben:
-
mal mit wireshark kombiniert mit debugging im script versucht ?
sprich loggen von "fertig" messages am ende des scripts und dann schauen ob das script ... segfaulted oder ähnliches ? sprich halt mal apache und php alles logging auf höchste stufe, logging in dateien aktivieren ... etc und dann mal mit nem cmd-tool ala apache-bench einfach mal massiv viele requests fahren schauen ob du "fehler" reproduzieren kannst, und dann wenn du fehler /probleme findest (du weist ja es haben XX requests stattgefunden, und so viele einträge müssten in deiner log sein) findest einfach mal die wireshark-logs auswerten oder halt noch xdebug mit ins boot holen und profiles erzeugen lassen.
Ich mein wir können hier nur raten, von einem kaputten php über kaputtes verhalten im browser zu sonstwas
Du musst versuchen es irgendwie schaffen so viel wie möglich informationen dabei sammeln und vor allem schauen wo das problem auftritt, sprich sendet der webserver nicht immer komplett, bricht php ab, verkaggt der browser es aufgrund von caching oder baut flash mist.
Einen Kommentar schreiben:
-
ja, ist mir bewusst. nur wie kann es sein, dass wenn ich dies nicht tue, im u.a. Google Chrome von Flash geladene XML's nicht korrekt ankommen.
?
Einen Kommentar schreiben:
-
Lässt sich auch einfach machen, wenn man Output Buffering benutzt:
PHP-Code:<?php
ob_start();
// eigentliches Skript
$output = ob_get_clean();
header('Content-Length: '.strlen($output));
echo $output;
?>
Einen Kommentar schreiben:
-
Die Content-Length kann man NUR setzen wenn man vorher weis wie groß der output ist, also dann wenn man z.b. Dateien zum Download anbietet und durch php durchschleift oder ein system zum einsatz kommt wo eh jeglicher content in einem gerendert wird und dann gesendet wird, also in den meisten Fällen wo ein System zum Einsatz kommt wo kein output während dem script sondern erst am Ende erzeugt wird.
Bei Datei-Downloads ist es mehr als üblich das zu machen schon alleine damit der user weis wie groß sein download sein wird, bei normalen seiten wo man den content als ganzes ausgibt, bricht man sich keinen ab wenn man es machen kann, sind ja im endeffekt nur 1-2 zeilen, wird aber oft einfach vergessen.
Gerade bei MVC-Systemen mit einem Response-Objekt lässt sich sowas ja sehr einfach automatisieren.
Einen Kommentar schreiben:
-
interessant ist das verhalten im google Chrome, er zeigt nichts an. mir ist das Problem nun zum ersten mal wirklich aufgefallen, es ist doch eher unüblich, dass die content-length manuell gesetzt wird!?.
Einen Kommentar schreiben:
-
Content-Length ist bei dynamischen scripten (php, perl, ... ) keine sache des webservers! Sondern des Scripts!
Wie auch, woher soll der webserver VOR der ersten ausgabe, wenn die header gesendet werden, schon wissen wie viel man mit PHP später ausgeben wird ?
Ein Script muss diese Header setzen wenn die Gegenseite darauf aufbauen will.
Wenn also wirklich header auftauchen würde ich an deiner Stelle das ganze mal nicht mit Firebug versuchen zu debuggen sondern wireshark oder ähnlichem und schauen ob da die header auftauchen.
Einen Kommentar schreiben:
-
Zitat von fireweasel Beitrag anzeigenWeil serverseitig vergessen wurde, den Header zu setzen?
Einen Kommentar schreiben:
-
Zitat von notyyy Beitrag anzeigenHallo,
ich bekomme in regelmäßigen Abständen in Flash -> PHP Requests vom Apache Seiten in denen die Content-length nicht gesetzt ist., Firebug zeigt diese als ? an.
Auf der Client-Seite kommen HTTP-Responses an, die serverseitig mit PHP erzeugt wurden und keinen "Content-Length"-Header beinhalten.
???
habt ihr eine Idee warum dies geschieht?
(Unter der Annahme, dass meine Interpretation deines Posts richtig ist.)
Einen Kommentar schreiben:
-
Zitat von notyyy Beitrag anzeigenin Flash -> PHP Requests vom Apache Seiten
Beschreibe bitte mal verständlich, wer was wo von wem anfordert.
Einen Kommentar schreiben:
Einen Kommentar schreiben: