[Python-de] Linux fifo in Python-CGI

Stefan Schwarzer sschwarzer at sschwarzer.net
Sat Aug 17 12:40:29 EDT 2002


Hallo Christian,

bitte achte in Zukunft darauf, keine Mails mit "unendlich langen" Zeilen (eine Zeile
pro Absatz) zu verschicken. Ich habe deine Mail umformatiert.

Christian Rothe wrote:
> ich habe da ein Problem mit meinem python cgi. Dieses soll dynamisch eine HTML
 > Seite erzeugen. Funktioniert auch alles wunderbar. Einige Werte, die auf der Seite
 > angezeigt werden sollen hole ich aus einer Textdatei, mit
 > 'f=open("datei.txt","r",1024) und ausgabe=f.readline() ...'. Meine HTML-Seite
 > erneuert sich alle 2 Sekunden um mir evtl. Änderungen der Daten in dieser Datei
 > anzuzeigen. Das klappt wie gesagt gut. Nun das Problem: Es ist erforderlich, dass
 > die Daten nicht aus einer Datei, sondern aus einer linux-fifo gelesen werde.

Das klingt so, als wären Fifos unter Linux etwas anderes als unter anderen
Unix-Systemen. Ist das so?

 > Diese habe ich manuell mit 'mkfifo fifo' angelegt. Wenn ich nun das python script
 > von der Konsole aus starte und anschließend etwas von einer anderen Konsole in die
 > fifo schreibe arbeitet alles wie es soll. Wenn jedoch das python script durch
 > meinen Browser aufgerufen wird, kann dieser die Seite nicht aufbauen. Offensichtlich
 > wird das Öffnen der fifo nicht ausgeführt, denn wenn ich die Zeile mit
 > 'f=open("fifo","r",1024) auskomentiere funktioniert der Seitenaufbau im Browser
 > wieder, halt ohne die gewünschten Daten.

Ich kann dir keine unmittelbare Antwort geben, nur ein paar Fragen, um dem Fehler
auf die Spur zu kommen:

- Was heißt "funktioniert nicht"? Findest du eine Ausgabe im Fehler-Logfile des
   Servers? Gibt es eine Exception? Wenn ja, was steht im Traceback?

- Hat der Benutzer, unter dem das CGI-Skript läuft, Leserecht für den Fifo?

- Greift dein Skript auf das richtige Verzeichnis zu, d. h. dem, in dem der Fifo
   liegt?

Viele Grüße
  Stefan





More information about the Python-de mailing list