Ich habe gerade meine Website auf GoDaddy-Hosting umgestellt und alles funktioniert, aber die PHP-Skripte geben die Daten nicht sofort aus - sie puffern, bis das Skript fertig ist und dann die ganze Seite auf einmal rendert. Und natürlich, für lange Skripte, ist das ein Problem. Bei meinem alten Host lief es nicht so, und die GoDaddy-Unterstützung sagt, dass sie damit nicht helfen können. Hier ist, was ich habe schon versucht (ohne Erfolg)Wie kann ich die Ausgabepufferung in PHP bei gemeinsamem Linux-Hosting deaktivieren?
- Disabled Ausgang Kompression (zlib, gzip)
- Set
output_buffering = off
in php.ini - Set-Header für
Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
,Pragma "no-cache"
,Expires "Wed, 10 May 1985 09:00:00 GMT"
und ungesetzt dieETag
Header - ich habe auch versucht die Pufferung Werte im Skript Einstellung selbst, mit
ini_set('output_buffering', 'off')
,ini_set('zlib.output_compression', false)
,while (@ob_end_flush())
,ini_set('implicit_flush', true)
undob_implicit_flush(true)
- Und ich versuchte, läuft
flush()
undob_flush()
Befehle nach jedemecho
Ausgang - die PHP-Version aus dem Standard-Versuchte Veränderung (5,4 nativen, die APC aktiviert hat) auf 5,4 nicht-native und 5,5
ich auch erstellt ein Testskript, das einfach für 5 Iterationen eine Schleife bildet und bei jeder Iteration eine Zeile ausgibt, dann eine Sekunde vor der nächsten Iteration wartet. Ich habe dies getan, um andere mögliche Ursachen von Problemen zu beseitigen. Aber egal, was ich mache, das Skript wartet immer bis zum Abschluss, bevor es mit dem Rendern beginnt.
Also, gibt es etwas, was ich tun kann, damit es richtig funktioniert?
Wenn die Deaktivierung von GZIP und die Verwendung von "ob_flush" und "flush" nicht funktioniert, ist möglicherweise mehr los. Vielleicht ein Reverse Proxy oder sowas. –
^^ Das scheint wahrscheinlich. Wie lange dauert es, bis eine Zeile Text wiedergegeben wird? –
Ich bin mir nicht sicher, was du mit "wie lange" meinst. Wenn ich nur ein Skript mache, das eine Zeile druckt, ist das fast augenblicklich. – user496854