cgi Scripte laufen nicht Linux, /usr/lib/cgi-bin geht nicht

Probleme bei der Installation?
Antworten
Sinnentlehrt
User
Beiträge: 67
Registriert: Mittwoch 30. Januar 2013, 22:32

Hallo Leute,

habe ein Linux Mint 13 laufen, was dann wohl gleich Ubuntu heißt. Habe apache2 aus den Packetquellen generiert und der läuft auch soweit.

Möchte dieses Skript laufen lassen.

Code: Alles auswählen

###!C:\Python27\python.exe
print "Content-type: text/html"
print

print "<html>"
print "<body>"
print "<h1>Hallo Python 2.7</h1>"
print "</body>"
print "</html>"
Habe nach googeln erfahren das die cgi-Skrpte im Apache2 wohl hier hingehören.
/usr/lib/cgi-bin

Der Besitzer der Skripte ist root und ich habe mal testweise alle Berechtigungen für die Skripte auf 777 gestellt, der Pfad ist 775.
error.log vom Apache.

Code: Alles auswählen

[Tue May 07 03:37:51 2013] [error] [client 127.0.0.1] (13)Permission denied: exec of '/usr/lib/cgi-bin/Python27/server_hallo.cgi' failed
[Tue May 07 03:37:51 2013] [error] [client 127.0.0.1] Premature end of script headers: server_hallo.cgi
Warum klappt es nicht??

Grüße,
Du weißt das du vergessen hast einzukaufen, wenn du dich morgens mit Geschirrspülmittel duscht.
Sirius3
User
Beiträge: 17749
Registriert: Sonntag 21. Oktober 2012, 17:20

Hallo Sinnentlehrt,
läuft das Script überhaupt von der Kommandozeile?
Nein?
Denn versuch's mal mit dem richtigen Shebang:

Code: Alles auswählen

#!/usr/bin/python
Grüße
Sirius
Sinnentlehrt
User
Beiträge: 67
Registriert: Mittwoch 30. Januar 2013, 22:32

Hi Sirius,

ne, das war es auch nicht. Exakt der gleiche Error-Log wie vorher.

Von der Kommando Zeile läuft es.
Zuletzt geändert von Sinnentlehrt am Dienstag 7. Mai 2013, 08:28, insgesamt 1-mal geändert.
Du weißt das du vergessen hast einzukaufen, wenn du dich morgens mit Geschirrspülmittel duscht.
Sirius3
User
Beiträge: 17749
Registriert: Sonntag 21. Oktober 2012, 17:20

das ist keine sinnvolle Fehlerbeschreibung.

Was passiert wenn Du in der Shell

Code: Alles auswählen

/usr/lib/cgi-bin/Python27/server_hallo.cgi
eingibst?
Sinnentlehrt
User
Beiträge: 67
Registriert: Mittwoch 30. Januar 2013, 22:32

Code: Alles auswählen

kiste Python27 # /usr/lib/cgi-bin/Python27/server_hallo.cgi
bash: /usr/lib/cgi-bin/Python27/server_hallo.cgi: Permission denied
Aber das läuft, oder ist das egal.

Code: Alles auswählen

kiste Python27 # python server_hallo.cgi
Nachtrag, natürlich alles als root.
Du weißt das du vergessen hast einzukaufen, wenn du dich morgens mit Geschirrspülmittel duscht.
Sirius3
User
Beiträge: 17749
Registriert: Sonntag 21. Oktober 2012, 17:20

dann weißt Du ja, warum der Server das Script nicht zum Laufen bekommt, wenn es nichtmal Du auf der Shell schaffst.
Wie sind denn die Rechte des Scripts und aller Verzeichnisse?
Sinnentlehrt
User
Beiträge: 67
Registriert: Mittwoch 30. Januar 2013, 22:32

Code: Alles auswählen

-rwxrwxrwx 1 root root  162 Mai  7 09:12 server_hallo.cgi

drwxrwxrwx 3 root root   4096 Mai  7 09:12 Python27

drwxr-xr-x  4 root   root         4096 Mai  7 02:23 cgi-bin

drwxr-xr-x 187 root root 36864 Mai  6 19:43 lib

drwxr-xr-x  10 root root  4096 Okt 17  2012 usr
Ich glaube mir schwant was.

Code: Alles auswählen

kiste Python27 # /usr/lib/cgi-bin/Python27/server_hallo.cgi
bash: /usr/lib/cgi-bin/Python27/server_hallo.cgi: /usr/bin/python^M: bad interpreter: No such file or directory
Schätze mal daß das Skript vorher doch nicht ausführbar war. :roll: :oops:

Und jetzt muß ich wohl irgendwo eine config oder sowas ähnliches anpassen, oder? Allerdings ist python an seinen Platz und mit python27 verknüpft.
Du weißt das du vergessen hast einzukaufen, wenn du dich morgens mit Geschirrspülmittel duscht.
BlackJack

@Sinnentlehrt: Du hast die Datei wahrscheinlich unter Windows erstellt und mit Windows-Zeilenenden gespeichert. Das ``^M`` in der Fehlermeldung deutet darauf hin. Das musst Du ändern.
Sinnentlehrt
User
Beiträge: 67
Registriert: Mittwoch 30. Januar 2013, 22:32

ES LEBT!!!!!

Danke Sirius, danke BlackJack.

Ja, es scheint das die Lerndateien wohl alle mit Windows erstellt wurden.
Du weißt das du vergessen hast einzukaufen, wenn du dich morgens mit Geschirrspülmittel duscht.
Antworten