![](https://seccdn.libravatar.org/avatar/afb4a26b88b249140657d8557f8efc6b.jpg?s=120&d=mm&r=g)
Hallo Liste, Ich habe ein kleines Problem mit meinem Apache Webserver. Ich habe mir ein paar kleine CGI-Scripts in Perl geschrieben. Diese funktionieren auch wunderbar, aber dann habe ich mir mal ein paar vorgefertigte Scripts von perlunity.de heruntergeladen und die funktionieren nicht. In der error_log steht dann immer: "(2)Datei oder Verzeichnis nicht gefunden: exec of /usr/local/httpd/cgi-bin/newsadmin.cgi failed" Wenn ich die Scripte aber von der Konsole über "perl newsadmin.cgi" aufrufe, funktionieren diese. Woran kann das liegen? Ich benutze SuSE Linux 7.1 mit Apache 1.3.1.4, mod_perl und perl 5.6.0 mfg, Thomas
![](https://seccdn.libravatar.org/avatar/715ec591c41fdf51acee78156234f9e2.jpg?s=120&d=mm&r=g)
On Thu, 2002-09-12 at 17:45, Thomas Gräber wrote:
funktionieren nicht. In der error_log steht dann immer: "(2)Datei oder Verzeichnis nicht gefunden: exec of /usr/local/httpd/cgi-bin/newsadmin.cgi failed" Wenn ich die Scripte aber von der Konsole über "perl newsadmin.cgi"
Liegt Dein Perl nicht unter dem Pfad, der in der Datei steht?? Erste Zeile muß heissen: #!<PFAD ZU PERLBINARY> Wenn Du es mit perl skript aufrufst, wird die Zeile ignoriert. HTH Volker -- Volker Kroll 4mino AG Chief System Developer Chausseestr. 52 b volker.kroll@4mino.de D-10115 Berlin Tel.: +49-30-2888490-0 Fax.: +49-30-2888490-99
![](https://seccdn.libravatar.org/avatar/afb4a26b88b249140657d8557f8efc6b.jpg?s=120&d=mm&r=g)
----- Original Message -----
From: "Volker Kroll"
funktionieren nicht. In der error_log steht dann immer: "(2)Datei oder Verzeichnis nicht gefunden: exec of /usr/local/httpd/cgi-bin/newsadmin.cgi failed" Wenn ich die Scripte aber von der Konsole über "perl newsadmin.cgi"
Liegt Dein Perl nicht unter dem Pfad, der in der Datei steht?? Erste Zeile muß heissen: #!<PFAD ZU PERLBINARY> Wenn Du es mit perl skript aufrufst, wird die Zeile ignoriert.
Ja, stimmt, das habe ich schon mehrmals überprüft. mfg, Thomas
![](https://seccdn.libravatar.org/avatar/afb4a26b88b249140657d8557f8efc6b.jpg?s=120&d=mm&r=g)
----- Original Message -----
From: "Peter Wiersig"
Thomas Gräber wrote:
Wenn ich die Scripte aber von der Konsole über "perl newsadmin.cgi" aufrufe, funktionieren diese. Woran kann das liegen?
Am fehlenden Executable bit?
Rechtevergaben sind auch alle so, wie sich das gehört (rwxr-xr-x).
![](https://seccdn.libravatar.org/avatar/715ec591c41fdf51acee78156234f9e2.jpg?s=120&d=mm&r=g)
Letzter Versuch: Ist Dein Apache so konfiguriert, daß er nur Files mit der Endung .pl ausführt? V -- Volker Kroll 4mino AG Chief System Developer Chausseestr. 52 b volker.kroll@4mino.de D-10115 Berlin Tel.: +49-30-2888490-0 Fax.: +49-30-2888490-99
![](https://seccdn.libravatar.org/avatar/ae2425c1ae6a853ce926fb5d532fc801.jpg?s=120&d=mm&r=g)
Moin, Volker Kroll:
Letzter Versuch: Ist Dein Apache so konfiguriert, daß er nur Files mit der Endung .pl ausführt?
Thomas Gräber:
eigentlich nicht, meine Scripte sind ja auch mit *.cgi.
Aber wie macht man denn das?
Zum testen benenn' doch einfach dein script in xxx.pl um. Wenn's dann läuft: Bingo. Prüf mal die Umbrüche, ob das Linux, Mac oder Windows ist. Einfach die Datei auf der Konsole in vi öffnen. Wenn ales in einer Zeile steht oder ^M an den Zeilenenden: Bumm. Liegt dein cgi auf einer Partition, die das executen von Dateien verbietet? Prüf mal deine fstab, und versuch das script mal nicht mit perl name.pl auszuführen, sondern einfach mit ./name.pl Das muß gehen. Ist das x-Bit auch für den richtigen User gesetzt? Je nach Config muß die Datei für httpd oder wwwrun ausführbar sein, nicht unbedingt für den Eigentümer. Oh, und das Script liegt auch wirklich da und ist nicht etwa ein Link oder so, ja? Tschüß, Ratti -- http://www.gesindel.de - Fontlinge - Die Fontverwaltung fuer Linux Fontmanagement for Linux
![](https://seccdn.libravatar.org/avatar/afb4a26b88b249140657d8557f8efc6b.jpg?s=120&d=mm&r=g)
----- Original Message -----
From: "Joerg Rossdeutscher"
Letzter Versuch: Ist Dein Apache so konfiguriert, daß er nur Files mit der Endung .pl ausführt?
Thomas Gräber:
eigentlich nicht, meine Scripte sind ja auch mit *.cgi.
Aber wie macht man denn das?
Zum testen benenn' doch einfach dein script in xxx.pl um. Wenn's dann läuft: Bingo.
Keine Änderung
Prüf mal die Umbrüche, ob das Linux, Mac oder Windows ist. Einfach die Datei auf der Konsole in vi öffnen. Wenn ales in einer Zeile steht oder ^M an den Zeilenenden: Bumm.
Nichts dergleichen, alles normal.
Liegt dein cgi auf einer Partition, die das executen von Dateien verbietet? Prüf mal deine fstab, und versuch das script mal nicht mit perl name.pl auszuführen, sondern einfach mit ./name.pl Das muß gehen.
Da muss das Problem liegen, geht nämlich nicht. dann kommt: "bash: Datei oder verzeichnis nicht gefunden" Ich führe die Scripte auf der Konsole als Root aus.
Ist das x-Bit auch für den richtigen User gesetzt? Je nach Config muß die Datei für httpd oder wwwrun ausführbar sein, nicht unbedingt für den Eigentümer.
rwxr-xr-x
Oh, und das Script liegt auch wirklich da und ist nicht etwa ein Link oder so, ja?
Das liegt wirklich da. Tschüss, Thomas
![](https://seccdn.libravatar.org/avatar/c49a1b37769784e302f9b6c2f15fb979.jpg?s=120&d=mm&r=g)
Thomas Gräber wrote:
From: "Joerg Rossdeutscher"
auszuführen, sondern einfach mit ./name.pl Das muß gehen.
Da muss das Problem liegen, geht nämlich nicht. dann kommt: "bash: Datei oder verzeichnis nicht gefunden" Ich führe die Scripte auf der Konsole als Root aus.
Dann ist die erste Zeile im Skript kaputt. Wenn die richtig aussieht, und du die Skripte z.B. mit Windows und WinZIP ausgepackt hast, stell beim naechsten Auspacken die automatische Zeilenende Konvertierung aus. Bei einer SuSE sollte in der ersten Zeile von Perl-Skripten #!/usr/bin/perl -w stehen. Peter
![](https://seccdn.libravatar.org/avatar/afb4a26b88b249140657d8557f8efc6b.jpg?s=120&d=mm&r=g)
----- Original Message -----
From: "Peter Wiersig"
Thomas Gräber wrote:
From: "Joerg Rossdeutscher"
auszuführen, sondern einfach mit ./name.pl Das muß gehen.
Da muss das Problem liegen, geht nämlich nicht. dann kommt: "bash: Datei oder verzeichnis nicht gefunden" Ich führe die Scripte auf der Konsole als Root aus.
Dann ist die erste Zeile im Skript kaputt. Wenn die richtig aussieht, und du die Skripte z.B. mit Windows und WinZIP ausgepackt hast, stell beim naechsten Auspacken die automatische Zeilenende Konvertierung aus.
Bei einer SuSE sollte in der ersten Zeile von Perl-Skripten #!/usr/bin/perl -w
Danke, das wars. Hinter dem perl satnd noch etwas, was ein Leerzeichen zu sein schien und deshalb ging es dann nicht. Danke, Thomas
participants (4)
-
Joerg Rossdeutscher
-
Peter Wiersig
-
Thomas Gräber
-
Volker Kroll