Page 1 of 1

Premature end of script headers

Posted: 2007-04-15 07:29
by freakx0
Ein native C/C++ binäres Cgi-Script will einfach nicht laufen...

Mein System: Debian Etch Apache 2.2.3 PHP 5.2.0-7
Im Apachen steht:
AddHandler cgi-script .cgi # ist also eingeschaltet, mod_cgi ist auch geladen.

Das Apache-Error-Log sagt nachfolgende 2 Zeilen:
(8) Exec format error: exec of '...' failed
Premature end of script headers


Mein Testscript funktioniert:
#!/usr/bin/perl
print "Content-type: text/htmlnn";
print "<html><body><pre>";

print "funktioniert";

print "</pre></body></html>";


Woran könnte es noch liegen, oder wo könnte ich noch logs einschalten um weitere infos zu bekommen?

Gruß
Dominik

Re: Premature end of script headers

Posted: 2007-04-15 09:23
by daemotron
Lässt sich denn das Binary so ausführen? Gab es beim kompilieren irgendwelche Fehler oder Warnings?

Re: Premature end of script headers

Posted: 2007-04-15 09:48
by freakx0
ich habe keine sourcen. ich habe nur das cgi script vom hersteller bekommen und auf einem anderen webspace läuft es auch. das ist eine webseiten suchmaschine (braucht bissl mehr speicher, also könnte es auch an limits liegen...)

wie soll ich das binary ausführen? ~#: ./search.cgi liefert ein "cannot execute binary file"

gruß
dominik

Re: Premature end of script headers

Posted: 2007-04-15 11:01
by daemotron
OK, scheint also ein Problem mit dem Binary selbst zu sein. Da kommen jetzt viele Möglichkeiten in Betracht... Davon ausgehend, dass es nicht an so etwas banalem wie Berechtigungen liegt - eventuell ist die Datei in einem Format kompiliert, dass Dein Kernel nicht ausführen kann... Um die ausführbaren Binärformate zu ermitteln, kannst Du folgenden Befehl verwenden:

Code: Select all

zgrep BINFMT /proc/config.gz
Wes Geistes Kind Dein Binary ist, ermittelst Du mit

Code: Select all

file -p /dein/binary.cgi
Wenn Das Format ausführbar ist, dann kannst Du der Datei mal mit strace und ldd zu Leibe Rücken um zu sehen, wo's klemmt bzw. ob irgendwelche Bibliotheken fehlen (wobei dynamisch gelinkte libs bei einem closed-source Binary schon eine harte Nummer wären)

Re: Premature end of script headers

Posted: 2007-04-15 12:25
by freakx0
vielen dank für die hilfe! :-) es funktioniert nun.

es lag an einer fehlenden lib. da 64bit version war die nicht vorhanden.

gruß und dir einen schönen sonntag!
dominik