Sven Rautenberg: und (CGI): Probleme mit Apache und Mimetex

Beitrag lesen

Moin!

G:/wamp/Apache2/cgi-bin/mimetex.cgi is not executable; ensure interpreted scripts have "#!" first line

Die CGI-Datei ist nicht von sich aus "ausführbar" deklariert und läuft offensichtlich durch den Perl-Interpreter. Dieser aber erwartet aber Perl-Quellcode und offenbar zwingend auch die Shebang-Zeile als erste Zeile der Datei.

Klar, der kompilierten cgi-Datei steht nicht in der ersten Zeile der Pfad zum Perl-Interpreter. Aber selbst wenn ich in der Kommandozeile
...\perl\bin\perl.exe mimetex.cgi
aufrufe, bekomme ich die Fehlermeldung
Unrecognized character \x7F at mimetex.cgi line 1.

Weil das CGI ein Linux-Programm ist, was alleine ausgeführt werden muß.

Hab ich hier was falsch verstanden und brauche für cgi-Dateien einen anderen Interpreter?

Du brauchst für Perl-Skripte den Perl-Interpreter. Für kompilierte Programme (deren Dateiendung unter Linux vollkommen egal ist, da kommt es auf das gesetzte "Execute-Flag" der Datei an, um anzuzeigen, dass das ein ausführbares Programm ist - unter Windows aber hängt es von der Dateiendung ab, die muß ".exe", ".com", ".dll" oder eine der diversen anderen Programmdateiendungen sein) ist KEIN Interpreter notwendig.

Oder versteht Windows keine unter Linux kompilierten cgi-Dateien?

Natürlich nicht. Windows läuft zwar auf dem gleichen Prozessor und kennt daher die verwendeten Maschinensprachebefehle, aber kein Programm funktioniert ohne Aufrufe des Betriebssystems - und Linux hat ganz andere Aufrufe, als Windows. Du benötigst zwingend ein für Windows kompiliertes Programm.

- Sven Rautenberg

--
My sssignature, my preciousssss!