Während PHP-Skripte ohne Ausgabe von Headern, HTML-Gerüst oder sonstigen Tamm auskommen, verhält sich der Apache offensichtlich bei Python-Skripten etwas zickiger.
Ein Minimal-Skript, wie
1 2 |
#! /usr/bin/python2.6 print "Hello World" |
läuft zwar wunderbar in der Shell, erzeugt aber, wenn es über die entsprechende URL aufgerufen wird, möglicher Weise einen Fehler 500.
Der Apache weiß also offensichtlich nicht, was er mit der Ausgabe machen soll und wie er sie behandeln soll.
Die Lösung ist relativ simpel:
1 2 3 4 |
#! /usr/bin/python2.6 print "Content-Type: text/html" print print "<html><body><h1>Hello World</body></html>" |
sorgt dafür, dass auch der Aufruf im Browser klappt.