Seite 1 von 1

Python Script läuft nicht auf dem Server

Verfasst: Freitag 4. Januar 2008, 18:28
von pythonguy
Ok, es geht um folgendes: meine Scripts laufen bei mir lokal wunderbar, wenn ich sie allerdings auf meinem Server uploade, bekomme ich immer einen 500 Error, im Log steht folgendes:

Premature end of script headers

Header habe ich mehrmals geprüft und dürfte korrekt sein:

#!/usr/bin/python

Die Rechte sind alle auf 755, außerdem habe ich meinen FTP Client noch extra auf ASCII-Modus umgestellt und alles hat nichts gebracht, hat jemand einen Rat?

Re: Python Script läuft nicht auf dem Server

Verfasst: Freitag 4. Januar 2008, 19:02
von gerold
pythonguy hat geschrieben:Premature end of script headers
Hallo pythonguy!

Wahrscheinlich musst du erst noch die Zeilenumbrüche der Datei von Windows auf Linux umstellen: http://www.python-forum.de/topic-7759.html

Lesestoff: [wiki]Web-Skripte zum Laufen bringen[/wiki]

mfg
Gerold
:-)

Re: Python Script läuft nicht auf dem Server

Verfasst: Freitag 4. Januar 2008, 21:22
von pythonguy
gerold hat geschrieben:
pythonguy hat geschrieben:Premature end of script headers
Hallo pythonguy!

Wahrscheinlich musst du erst noch die Zeilenumbrüche der Datei von Windows auf Linux umstellen: http://www.python-forum.de/topic-7759.html

Lesestoff: [wiki]Web-Skripte zum Laufen bringen[/wiki]

mfg
Gerold
:-)
Danke, ich habe beide Links mal durchgelesen und mein Script nochmal angeschaut, das einzige, was daran liegen könnte, sind wohl die Line-Feeds, allerdings verstehe ich diesen Satz nicht so ganz:

>> Die Zeilenenden dürfen nur \n (Unix-typische Line-Feeds) sein.

Meint man damit Zeilenenden in Strings? Wenn ja, dann benutze ich bereits überall \n, was Windows auch unterstützt...

Verfasst: Freitag 4. Januar 2008, 21:26
von pythonguy
Hab mal was simples getestet und nicht mal das hier funzt :cry:

Code: Alles auswählen

#!/usr/bin/python
print "<h1>It works?</h1>"

Verfasst: Freitag 4. Januar 2008, 21:27
von BlackJack
Damit sind die Zeilenenden in der Textdatei gemeint. Also nicht literale '\n' im Quelltext sondern das was am Ende jeder Quelltextzeile steht um eben deren Ende zu kennzeichnen.

Verfasst: Freitag 4. Januar 2008, 21:58
von Nicht_zu_definieren
Wenn du mit CGI arbeitest, musst du dich imho darum kümmern auch die richtigen HTTP-Header zurückzusenden:

Code: Alles auswählen

#!//usr/bin/python
print "Content-Type: text/html\r\n\r\n"
print "<h1>Wie gehts?</h1>"