GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Apache, Lighttpd, nginx, Cherokee
dts
Posts: 290
Joined: 2004-02-05 20:40
 

GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by dts »

Hallo,

Wenn ich das Installationskript von meiner Software für Onlineshops aufrufe, bekomme ich folgende Fehlermeldung:
Software error:
Can't locate setup/setup.pl in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.8.4 /usr/local/share/perl/5.8.4 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.8 /usr/share/perl/5.8 /usr/local/lib/site_perl) at verwaltung.cgi line 30.

For help, please send mail to the webmaster ([no address given]), giving this error message and the time and date of the error.
Was könnte die Ursache dafür sein? Der Perl-Pfad (/usr/bin/perl) und die Dateirechte stimmt laut Anleitung...

Bin für jeden guten Tip dankbar!

Lg Jürgen
Last edited by dts on 2005-02-02 01:22, edited 1 time in total.
bitbetrieb
Posts: 41
Joined: 2002-11-13 12:37
Contact:
 

Re: GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by bitbetrieb »

Hallo Jürgen,

die Fehlermeldung sagt Dir eigentlich schon recht genau wo das Problem liegt:

In einem Skript mit dem Namen "verwaltung.cgi" wird in Zeile 30 eine Datei mit dem Namen "setup.pl" eingebungen (mit use oder require), die Perl weder in dem angegebenen Unterverzeichnis "setup" noch in einem der Verzeichnisse der Systemvariable @INC findet.

Prüfe also nach, ob die Datei im Unterverzeichnis setup vorhanden ist.

Herzliche Grüße aus Weinsberg
Helmut Weber
dts
Posts: 290
Joined: 2004-02-05 20:40
 

Re: GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by dts »

Hallo Helmut,

Uiiii, ich sehe schon, dass ich die Fragestellung schlecht formuliert hatte. Was es bedeutet ist mir auch klar gewesen und die Datei "setup.pl" ist auch vorhanden.

Das sieht folgendermassen aus:

Code: Select all

/var/www/web2/html/cgi-bin/verwaltung.pl
/var/www/web2/html/cgi-bin/setup/setup.pl
Aber warum findet mein Perl das dann nicht? Ich hatte das Skript vor der Neuinstallation meines Server schon laufen, nur leider weiss ich jetzt nichtmehr weiter, warum das nichtmehr klappt...

Vielleicht bist du (oder jemand anderer) ein Perlprofi? ;)

Lg Jürgen
bitbetrieb
Posts: 41
Joined: 2002-11-13 12:37
Contact:
 

Re: GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by bitbetrieb »

Hallo Jürgen,

dann fällt mir folgendes auf:
Im 1. Posting steht verwaltung.cgi und im 2. verwaltung.pl. Stimmen also die Dateieindungen bei allen Skripten?

Ist dein Webserver auch so eingestellt, dass er Dateien mit der Endung .pl und .cgi als CGI ausführt?

Sollte dass alles richtig sein, fällt mir auf den ersten Blick nur noch ein Problem mit den Datei- und Ordner-Rechten ein.

Bei einem solchen Problem sind es meistens Kleinigkeiten die Falsch sind (evt. Tippfehler). Diese Kleinigkeiten findet man am Schnellsten dadurch, dass man den Fehler eingrenzt. Z.B. könntest Du versuchen die Datei setup.pl direkt anzusprechen, oder alle Skripte in einem Verzeichnis belassen. Das hängt aber im Einzelfall von deiner kompletten Software ab

Gruß, und viel Spaß bei der Fehlersuche
Helmut Weber
dts
Posts: 290
Joined: 2004-02-05 20:40
 

Re: GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by dts »

Hallo,

Es gibt da anscheinend gröbere Probleme mit meinem Perl/CGI-Zeugs, denn eine Testdatei (info.pl) funktioniert auch nicht:

Hier die info.pl:

Code: Select all

#!/usr/bin/perl
$|=1;


#my $sendmail=`whereis sendmail`;
#$sendmail =~ s/sendmail: //;
#my @mailloc = split(" ",$sendmail);

my $plocation=`whereis perl`;
$plocation =~ s/perl: //;
my @perlloc = split(" ",$plocation);

print "Content-type:  text/htmlnn";
print "<HTML><HEAD><TITLE>Server Variablen</TITLE></HEAD>";
print "<BODY><CENTER>";
print "<TABLE WIDTH=300><TR><TD><CENTER><FONT FACE=Arial COLOR=#000000>Server Variablenn";
print "</FONT></CENTER></TD></TR></TABLE><BR><BR>n";

print "<TABLE WIDTH=750><TR><td bgcolor="#D1DAE0">n<FONT FACE=Arial COLOR=RED>Allgemeine Perlinfos:</FONT><BR>";
print "<FONT FACE=Arial SIZE=2><B>Betriebssystem:</B> $^O<BR>n<B>Perl Version:</B> $]<BR>n";

print "<B>Pfade zu Perl:</B> ";foreach(@perlloc) {if ($_=~/bin/i) {print ""$_"&nbsp;&nbsp;&nbsp;&nbsp;"}};print "<BR>n";
print "<B>Pade zun";
my @sendmail = `whereis sendmail`;
foreach (@sendmail) {
        s/s+S+.S+//gi;
        s/s+$//g;
        s/ls+/l  oder  /gi;
        print "<b>$_</b>n";
}
print "n";
print "</FONT></TD></TR></TABLE><BR><BR>n";



print "<TABLE WIDTH=750 cellpadding=0 cellspacing=0><TR><TD>";
print "<FONT FACE=Arial SIZE=2 COLOR=RED>Umgebungsvariablen:</FONT><BR><FONT FACE=Arial SIZE=2><table>n";
foreach $fieldname(keys %ENV){print "<tr><td bgcolor="#c0c0c0"><B><FONT FACE=Arial SIZE=2>$fieldname:</B></td><td bgcolor=
print "</FONT></table></TD></TR></TABLE><BR><BR>";
print "<TABLE WIDTH=750><TR><TD colspan=3><FONT FACE=Arial COLOR=RED>Vorhandene Perl-Module:</FONT></TD></TR>n";
use File::Find;find(&wanted,@INC);sub wanted {$count = 0;if ($File::Find::name =~ /.pm$/) {open(MODFILE,$File::Find::name)
$message="$messagennPerl-Module:n";
my $count=0;while (@foundmods) {
        $count++;my $mod=shift(@foundmods);
        if ($count == 1) {print "<TR>";}
        if ($count <= 3) {print "<td bgcolor="#D1DAE0"><FONT FACE=Arial SIZE=2>$mod</FONT></TD>";}
        if ($count == 3) {print "</TR>n";$count=0;}
}#///
print "</TABLE>n";
print "<BR><BR><BR></CENTER></BODY></HTML>";
Die Datei liegt in meinem /cgi-bin Verzeichnis und hat als Rechte 755.

Weiters ist installiert Apache 1.3.31 unter Debian Sarge mit der Verwaltungsoberfläche Confixx 3.0.6, wobei der Apache mit SuEXEC betrieben wird.

Beim Aufruf obiger Datei erhalte ich folgende Logeinträge:

/var/log/apache/access.log

Code: Select all

83.65.194.122 - - [31/Jan/2005:13:19:40 +0100] "GET /cgi-bin/info.pl HTTP/1.1" 500 614 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.1.4322)" "-"
/var/log/apache/error.log

Code: Select all

Insecure $ENV{PATH} while running setuid at info.pl line 9.
[Mon Jan 31 13:20:18 2005] [error] [client 83.65.194.122] Premature end of script headers: /var/www/web3/html/cgi-bin/info.pl
/var/log/apache/suexex.log

Code: Select all

[2005-01-31 13:21:14]: info: (target/actual) uid: (web3/web3) gid: (web3/web3) cmd: info.pl
Jemand eine Idee, was hier falsch läuft? Mit SuEXEC hat es doch auch nichts zu tun, wenn ich SuEXEC richtig verstanden habe?

Lg
Jürgen
dts
Posts: 290
Joined: 2004-02-05 20:40
 

Re: GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by dts »

Jeztt habe ich ein Problem mehr:
Es sind keine der oben genannten Logeinträge mehr vorhanden.
Das heißt, wenn ich die Datei aufrufe erhalte ich nurmehr

"HTTP 500 - Interner Serverfehler"

aber keine Logeinträge mehr... :cry: Kann mir bitte jemand helfen?
bitbetrieb
Posts: 41
Joined: 2002-11-13 12:37
Contact:
 

Re: GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by bitbetrieb »

Hallo Jürgen,

wenn jetzt etwas anderes passiert als vorher, wäre es interessant zu wissen was Du in der Zwischenzeit geändert hast.

Um aber die Grundfunktion Webserver/Perl zu testen solltest Du losgelöst von deiner Software, die Du einrichten willst einen kleinen Test versuchen:

Code: Select all

#!/usr/bin/perl -w
use strict;
use CGI::Carp qw( fatalsToBrowser );
print "Content-type: text/htmlnn";
print "TEST";
exit;
Dieses Script sollte einfach nur TEST auf dem Browser ausgeben. Wenn dieses Skript funktioniert, versuche ein 2. Skript aus einem Unterverzeichnis einzubinden. usw. usw.

Dann spiele die Daten deiner gewünschten Software nochmals auf, und versuche Schritt für Schritt diese in Betrieb zu nehmen.
Ausführen -> Fehlermeldung analysieren -> Fehler eingrenzen -> erneut ausführen.

Dieser Vorgang ist Leidvoll, kann Dir aber keiner Abnehmen ;) Bei Standard-Programmen, die man eben nur einspielen möchte kann es immer zu Problemen kommen. Hierbei wäre es von Vorteil zu verstehen, was das Programm macht, und wie es ggf. auf seine Bedürfnisse anzupassen ist.

Herzliche Grüße aus Weinsberg
Helmut Weber
dts
Posts: 290
Joined: 2004-02-05 20:40
 

Re: GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by dts »

Hallo,

Dein obiges Beispiel

Code: Select all

#!/usr/bin/perl -w 
use strict; 
use CGI::Carp qw( fatalsToBrowser ); 
print "Content-type: text/htmlnn"; 
print "TEST"; 
exit;
gibt mir tatsächlich "TEST" aus. Bedeutet das nun, dass Perl und Apache grundsätzlich mal korrekt eingerichtet sind?

Lg
Jürgen
bitbetrieb
Posts: 41
Joined: 2002-11-13 12:37
Contact:
 

Re: GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by bitbetrieb »

Hallo Jürgen,

Gut, soweit scheint es zu funktionieren!

Du scheinst aber nicht sonderlich viel Erfahrungen mit Perl zu haben, sonst hättest Du Dir die Antwort auf deine Frage selbst geben können ;)

Versuchen wir mal folgendes:
Gebe eifach folgende Zeilen immer vor der Stelle ein, vor der Du einen Fehler vermutest:

Code: Select all

print "Content-type: text/htmlnn";
print "TEST";
exit;
Wenn TEST ausgegeben wird, ist das Programm bis dahin Okay. Kommt eine Fehlermeldung dann diese Zeilen evtl. ein Stückchen weiter oben eingeben, und/oder den Fehler analysieren.

Alternativ zu TEST kannst Du natürlich auch den Inhalt einer Variable ausgeben lassen, die in diesem Programmabschnitt relevant ist.

Viel Freude beim Fehlersuchen ;)
dts
Posts: 290
Joined: 2004-02-05 20:40
 

Re: GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by dts »

Das hilft mir aber nix...

Denn ich habe das Skript vor der Neuinstallation des Server in wenigen Minuten installiert und am laufen gehabt. Ich vermute eine Fehlkonfiguration von Perl/Apache, weiss aber nicht wo ich anfangen soll zum suchen...

Hat da nicht jemand einen guten Tip auf Lager ? :cry:
wgot
Posts: 1675
Joined: 2003-07-06 02:03
 

Re: GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by wgot »

Hallo,
DtS wrote:Das hilft mir aber nix
doch, vermutlich schon. Und Du würdest vermutlich feststellen, daß diese Zeile das Problem ist:
my $plocation=`whereis perl`;
Ersetze die mal durch eine feste Zuweisung:

Code: Select all

my $plocation='/usr/bin/perl';
und probier aus ob das Script jetzt durchläuft.

Falls ja wäre die Ausgabe von suexec -V doch interessant.

Gruß, Wolfgang
dts
Posts: 290
Joined: 2004-02-05 20:40
 

Re: GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by dts »

Hallo,

Code: Select all

my $plocation='/usr/bin/perl';
Dies macht anscheinend überhaupt keinen Unterschied.

Code: Select all

suexec -V
-bash: suexec: command not found

Hmm, jetzt versteh ich aber gar nichtsmehr?
Ich habe doch Apache für SuEXEC eingerichtet?

Lg
Jürgen
wgot
Posts: 1675
Joined: 2003-07-06 02:03
 

Re: GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by wgot »

Hallo,

das war aber genau die Zeile 9, die beanstandet wurde.
Aber vermutlich hast Du inzwischen ein anderes Problem und Perl läuft überhaupt nicht mehr? Also nochmal zurück nach 16:43 - geht das weiterhin und gibt's dabei Einträge in die Logs?

Suche nach suexec, kann sein daß es mit Pfad aufgerufen werden muß, kann auch sein daß es suexec2 heißt.

Gruß, Wolfgang
dts
Posts: 290
Joined: 2004-02-05 20:40
 

Re: GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by dts »

Hi Wolfgang,

Also die Suche nach "suexec" (locate suexec) bringt mir folgendes:

Code: Select all

/download/webmin-1.180/apache/mod_suexec.pl
/usr/lib/apache/suexec
/usr/lib/apache/suexec.disabled
/usr/local/src/webmin-1.180/apache/mod_suexec.pl
/usr/local/webmin/apache/mod_suexec.pl
/usr/share/man/man8/suexec.8.gz
/usr/share/webmin-1.170/apache/mod_suexec.pl
/var/log/apache/suexec.log
/var/log/apache/suexec.log.1
/var/log/apache/suexec.log.2.gz
Folgendes Skript läuft mit CHMOD 755 ohne Probleme:

Code: Select all

#!/usr/bin/perl -w 
use strict; 
use CGI::Carp qw( fatalsToBrowser ); 
print "Content-type: text/htmlnn"; 
print "TEST"; 
exit;
Also läuft Perl eigentlich...

Nur warum funktionier dieses Skript nicht, dass ich normal immer zum Ã?berprüfen von Perl verwende...

Code: Select all

#!/usr/bin/perl -w
$|=1;


#my $sendmail=`whereis sendmail`;
#$sendmail =~ s/sendmail: //;
#my @mailloc = split(" ",$sendmail);

my $plocation=`/usr/bin/perl`;
$plocation =~ s/perl: //;
my @perlloc = split(" ",$plocation);

print "Content-type:  text/htmlnn";
print "<HTML><HEAD><TITLE>Server Variablen</TITLE></HEAD>";
print "<BODY><CENTER>";
print "<TABLE WIDTH=300><TR><TD><CENTER><FONT FACE=Arial COLOR=#000000>Server Variablenn";
print "</FONT></CENTER></TD></TR></TABLE><BR><BR>n";

print "<TABLE WIDTH=750><TR><td bgcolor="#D1DAE0">n<FONT FACE=Arial COLOR=RED>Allgemeine Perlinfos:</FONT><BR>";
print "<FONT FACE=Arial SIZE=2><B>Betriebssystem:</B> $^O<BR>n<B>Perl Version:</B> $]<BR>n";

print "<B>Pfade zu Perl:</B> ";foreach(@perlloc) {if ($_=~/bin/i) {print ""$_"&nbsp;&nbsp;&nbsp;&nbsp;"}};print "<BR>n";
print "<B>Pade zun";
my @sendmail = `whereis sendmail`;
foreach (@sendmail) {
	s/s+S+.S+//gi;
	s/s+$//g;
	s/ls+/l  oder  /gi;
	print "<b>$_</b>n";
}
print "n";
print "</FONT></TD></TR></TABLE><BR><BR>n";



print "<TABLE WIDTH=750 cellpadding=0 cellspacing=0><TR><TD>";
print "<FONT FACE=Arial SIZE=2 COLOR=RED>Umgebungsvariablen:</FONT><BR><FONT FACE=Arial SIZE=2><table>n";
foreach $fieldname(keys %ENV){print "<tr><td bgcolor="#c0c0c0"><B><FONT FACE=Arial SIZE=2>$fieldname:</B></td><td bgcolor="#D1DAE0"><FONT FACE=Arial SIZE=2>$ENV{$fieldname}</td></tr>n";$message="$messagen$fieldname: $ENV{$fieldname}";}
print "</FONT></table></TD></TR></TABLE><BR><BR>";

print "<TABLE WIDTH=750><TR><TD colspan=3><FONT FACE=Arial COLOR=RED>Vorhandene Perl-Module:</FONT></TD></TR>n";
use File::Find;find(&wanted,@INC);sub wanted {$count = 0;if ($File::Find::name =~ /.pm$/) {open(MODFILE,$File::Find::name) || return;while(<MODFILE>) {if (/^ *package +(S+);/) {push (@foundmods, $1);last;}}}}
$message="$messagennPerl-Module:n";
my $count=0;while (@foundmods) {
	$count++;my $mod=shift(@foundmods);
	if ($count == 1) {print "<TR>";}
	if ($count <= 3) {print "<td bgcolor="#D1DAE0"><FONT FACE=Arial SIZE=2>$mod</FONT></TD>";}
	if ($count == 3) {print "</TR>n";$count=0;}
}#///
print "</TABLE>n";
print "<BR><BR><BR></CENTER></BODY></HTML>";
Wenn ich das nähmlich im Browser aufrufe (auch CHMOD 755) erhalte ich einen Error 500 (Internal Server Error) und... im Errorlog des Apache:

Code: Select all

Name "main::count" used only once: possible typo at env.cgi line 42.
Insecure $ENV{PATH} while running setuid at env.cgi line 9.
[Mon Jan 31 23:29:30 2005] [error] [client 83.65.194.122] Premature end of script headers: /var/www/web2/html/cgi-bin/env.cgi
Any Idea? :cry:

Lg Jürgen
wgot
Posts: 1675
Joined: 2003-07-06 02:03
 

Re: GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by wgot »

Hallo,
DtS wrote:/usr/lib/apache/suexec
die ist es, also:

/usr/lib/apache/suexec -V
Folgendes Skript läuft mit CHMOD 755 ohne Probleme
ok, Perl geht also grundsätzlich.
Insecure $ENV{PATH} while running setuid at env.cgi line 9.
Die Fehlermeldung hat sich durch meinen Ã?nderungsvorschlag also geändert - zwar immer noch Zeile9, aber in einer anderen Datei. Und was steht in env.cgi in Zeile 9 (und Umgebung)?
Premature end of script headers: ...
Setze testweise

Code: Select all

print "Content-type:  text/htmlnn";
in die zweite Zeile der test.pl

Gruß, Wolfgang
dts
Posts: 290
Joined: 2004-02-05 20:40
 

Re: GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by dts »

Hallo Wolfang,

Wirklich vielen Dank für deine Mühe, schön langsam könnte es ja was werden, wenn auch Perl immer schon meine grosse Schwäche war:

Code: Select all

/usr/lib/apache/suexec -V
ergibt

Code: Select all

 -D DOC_ROOT="/var/www"
 -D GID_MIN=100
 -D HTTPD_USER="www-data"
 -D LOG_EXEC="/var/log/apache/suexec.log"
 -D SAFE_PATH="/usr/local/bin:/usr/bin:/bin"
 -D UID_MIN=100
 -D USERDIR_SUFFIX="public_html"
Also die Zeile 9 von "env.cgi" lautet:

Code: Select all

my $plocation=`/usr/bin/perl`;
dort wo erst eben noch

Code: Select all

my $plocation=`whereis perl`;
gestanden hat.

Lg Jürgen
wgot
Posts: 1675
Joined: 2003-07-06 02:03
 

Re: GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by wgot »

Hallo,
DtS wrote: -D SAFE_PATH="/usr/local/bin:/usr/bin:/bin"
ging um diese Zeile, die ist aber ok. (Der rest muß ok sein, sonst ginge das Miniscript nicht.)
Also die Zeile 9 von "env.cgi" lautet:
ach so, test.pl und env.cgi ist die gleiche Datei.
my $plocation=`/usr/bin/perl`;
das sind Backquotes, nimm normale ' ' und das Script sollte zumindest ohne den 500 durchlaufen.

Sieht so aus, als ob Du aus Perl keine Systemaufrufe machen kannst.

Gruß, Wolfgang
dts
Posts: 290
Joined: 2004-02-05 20:40
 

Re: GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by dts »

Hi,
das sind Backquotes, nimm normale ' ' und das Script sollte zumindest ohne den 500 durchlaufen.
Du hast recht damit läuft es ohne Probleme...
Aber das löst eigentlich nicht das Ursprungsproblem...

Denn der Aufruf von http://www.meinedomain.info/cgi-bin/admin.cgi
ergibt immer noch folgende Fehlermeldung:
Software error:
Can't locate setup/setup.pl in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.8.4 /usr/local/share/perl/5.8.4 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.8 /usr/share/perl/5.8 /usr/local/lib/site_perl) at admin.cgi line 38.

For help, please send mail to the webmaster ([no address given]), giving this error message and the time and date of the error.
Dass er setup/setup.pl nicht findet ist mir dabei klar, aber warum sucht er nicht im eigenen Pfad danach, der /var/www/web2/html/cgi-bin lautet?

Lg Jürgen
wgot
Posts: 1675
Joined: 2003-07-06 02:03
 

Re: GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by wgot »

Hallo,
DtS wrote:Aber das löst eigentlich nicht das Ursprungsproblem
...

Can't locate setup/setup.pl ... at admin.cgi line 38.
Na gut, Perl funktioniert also, und damit sind wir wieder am Threadanfang: existiert Verzeichnis setup, liegt setup.pl drin, stimmen die Rechte und Owner, und was steht in Zeile 38?

Gruß, Wolfgang
dts
Posts: 290
Joined: 2004-02-05 20:40
 

Re: GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by dts »

Hi,
Na gut, Perl funktioniert also, und damit sind wir wieder am Threadanfang: existiert Verzeichnis setup, liegt setup.pl drin, stimmen die Rechte und Owner, und was steht in Zeile 38?
Tja, so sieht es leider aus... :cry:

Also... Das Verzeichnis 'Setup' existiert und es liegt darin auch die 'setup.pl'. Das verzeichnis, wie auch alle Dateien darin haben CHMOD 777, wie es in der Anleitung geschrieben stand...

Zeile 38 aus 'admin.pl':

Code: Select all

require "setup/setup.pl";
Bringt mich nicht wirklich weiter... hm?

Lg Jürgen
wgot
Posts: 1675
Joined: 2003-07-06 02:03
 

Re: GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by wgot »

Hallo,
DtS wrote:Das Verzeichnis 'Setup' existiert
hast Du Dich im Forum vertippt oder heißt es wirklich Setup? Linux achtet auf groß-/Kleinschreibung, vermißt wird setup.
Das verzeichnis, wie auch alle Dateien darin haben CHMOD 777,
Verzeichnisse auf 755, Scripts auf 755, andere Dateien auf 644.
wie es in der Anleitung geschrieben stand...
Anleitung ignorieren.

PS: wenn in der Anleitung eines Scripts 777 auftaucht hab ich immer starke Zweifel daß es sicher programnmiert ist!

Gruß, Wolfgang
dts
Posts: 290
Joined: 2004-02-05 20:40
 

Re: GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by dts »

Hi Wolfgang,
hast Du Dich im Forum vertippt oder heißt es wirklich Setup? Linux achtet auf groß-/Kleinschreibung, vermißt wird setup.
Es sollte 'setup' heissen... das mit Gross/Klein weiss ich... :wink:
Verzeichnisse auf 755, Scripts auf 755, andere Dateien auf 644.
Gut und schön, hab ich probiert. Ã?ndert aber leider auch nichts...

Viele Grüsse
Jürgen
olaf.dietsche
Posts: 401
Joined: 2002-12-19 02:06
Location: Siegburg
 

Re: GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by olaf.dietsche »

DtS wrote:
Software error:
Can't locate setup/setup.pl in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.8.4 /usr/local/share/perl/5.8.4 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.8 /usr/share/perl/5.8 /usr/local/lib/site_perl) at verwaltung.cgi line 30.

For help, please send mail to the webmaster ([no address given]), giving this error message and the time and date of the error.
...

Code: Select all

/var/www/web2/html/cgi-bin/verwaltung.pl
/var/www/web2/html/cgi-bin/setup/setup.pl
In @INC kommt weder /var/www/web2/html/cgi-bin noch . vor. Ist das möglicherweise dein Problem?
bitbetrieb
Posts: 41
Joined: 2002-11-13 12:37
Contact:
 

Re: GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by bitbetrieb »

Im aktuellen Verzeichnis sucht Perl automatisch nach dem gewünschten Script.
Erst wenn es dort nicht gefunden wird, sind die Verzeichnisse in der Variablen @INC an der Reihe.

Es bleibt wirklich nur, den Fehler durch Eingrenzen zu suchen. Der Webserver scheint zu laufen, Perl scheint zu laufen, nur das gewünschte Programm nacht Probleme.

Da hilft nur die Zeilen, die das Problem verursachen evtl. auskommentieren oder anpassen. Perl-Kenntnisse sind dazu unbedingt erforderlich.

Meine Vermutung liegt auch darin, dass das Ausführen von Systembefehlen Probleme macht. In den gezeigten Code-Ausschnitten kann jeder Systembefehl durch eine feste Zuweisung ersetzt werden (z.B. Pfad zu Perl und Pfad zu sendmail).

Gruß
Helmut Weber
dts
Posts: 290
Joined: 2004-02-05 20:40
 

Re: GELÃ?ST: Perl-Problem (Datei nicht gefunden)

Post by dts »

Hallo,

Nun ich sehe das Problem auch, dass Perl nicht im eigenen Webverzeichnis (Pfad) sucht, sondern nur in den Systemverzeichnissen. Wie kann dieses Problem eigentlich gelöst werden...?

Lg
Jürgen
Post Reply