CGI-Problem bei Ausgabe

Liebe Experten,

Wenn man in einem CGI-Script (Perl) eine
while-Schleife einbaut, um bei einem bestimmten Ereignis eine Ausgabe in ein HTML Dokument via Print zu tätigen, dann wird das Dokument nicht im Browser dargestellt und führt nach 60 Sekunden zu einem „Server Timeout“.

Wird in der while-Schleife aber bei jedem Durchlauf (also nicht bei einem bestimmten Ereignis) ein Leerzeichen ausgegeben, dann funktioniert diese Routine, erzeugt aber natürlich erheblichen Traffic und senkt die Performance.

Wie ist es also möglich, sekundenverzögerte Ausgaben in ein HTML-Dokument so zu tätigen, daß die Seite (und auch die neue Zeile) auch dargestellt wird ?

Ich bedanke mich ganz herzlich und lege das Schicksal meines Scriptes in Eure Hände :smile:

Viele liebe Grüße
Peter

PS: Was mir auch helfen könnte, wäre ein Script, daß exakt jede Sekunde eine neue Zeile ausgibt (wenn möglich auch ohne Server Push-Lösung, die Zeile sollte darunter stehen :smile:)

Hallo,

dann
wird das Dokument nicht im Browser
dargestellt und führt nach 60 Sekunden zu
einem „Server Timeout“.

Was macht das Script denn um Himmels Willen 60 Sekunden lang ???

PS: Was mir auch helfen könnte, wäre ein
Script, daß exakt jede Sekunde eine neue
Zeile ausgibt (wenn möglich auch ohne
Server Push-Lösung, die Zeile sollte
darunter stehen :smile:)

umm…probier mal Non Parsing Header such einfach mal nach dem Stichwort in der CGI-Doku Deiner wahl, bzw in einer Suchmaschine Deines Vertrauens…

evtl. reicht es aber auch, wenn Du vor der While Schleife schon mal etwas ausgibst…

Gruß
Arne

Hallo Arne,

Vielen Dank für Deine Antwort. Dieser Spur werde ich mal nachgehen.

Was das Script 60 Sekunden macht ? Es bekommt über Sockets von einem anderen Programm Infos, die es dann ausgibt.

In dieser Zeit gibt’s keinen Print, und das Dokument wird komplett nicht dargestellt…

Viele liebe Grüße
Peter

Wenn es um Perl geht, kannst du per
$|=1;

oder $|=0; weiss grad nicht mehr wie rum das war, das Buffering unterbinden.

Ciao Bruno