Perl funktioniert nicht...

Apache, Lighttpd, nginx, Cherokee
Post Reply
cbn5
Posts: 8
Joined: 2003-05-29 11:59
 

Perl funktioniert nicht...

Post by cbn5 »

Hallo Alle,

ich wollte gerade eben auf meinem neuen dedicated server mit dem neusten suse ein paar cgi-skripte installieren, leider erhalte ich - egal was ich mache nen Error 500 beim aufruf des entsprechenden Skriptes.
Ich lade die Dateien als root hoch (ich weiß, sollte man eigentlich nicht), aber durch ein chmod 755 sollten die rechte trotzdem korrekt gesetzt sein. In der Console kann ich mit "perl /srv/www/cgi-bin/test.pl" die Datei ohne Probleme ausführen...nur Apache weigert sich partout.

In der Apache-Errorlog finde ich nach jedem Aufruf einer Perldatei einen derartigen Eintrag:

Code: Select all

[Sun Jun  1 20:28:47 2003] [error] (2)No such file or directory: exec of /srv/www/cgi-bin/test.pl failed
[Sun Jun  1 20:28:47 2003] [error] [client 217.236.xxx.xxx] Premature end of script headers: /srv/www/cgi-bin/test.pl
In der httpd.conf sind folgende Einträge vorhanden:

Code: Select all

ScriptAlias /cgi-bin/ "/srv/www/cgi-bin/"

<IfModule mod_perl.c>
    # Provide two aliases to the same cgi-bin directory, 
    # to see the effects of the 2 different mod_perl modes.
    # for Apache::Registry Mode
    ScriptAlias /perl/          "/srv/www/cgi-bin/"
    # for Apache::Perlrun Mode
    ScriptAlias /cgi-perl/      "/srv/www/cgi-bin/"
</IfModule>
    #
    # "/srv/www/cgi-bin" should be changed to whatever your ScriptAliased
    # CGI directory exists, if you have that configured.
    #
    <Directory "/srv/www/cgi-bin">
        AllowOverride None
        Options None
        Order allow,deny
        Allow from all
    </Directory>

</IfModule>
# End of aliases.


#
# set /cgi-bin for CGI execution
#
<Location /cgi-bin>
AllowOverride None
Options +ExecCGI -Includes
SetHandler cgi-script
</Location>

#
# If mod_perl is activated, load configuration information
#
<IfModule mod_perl.c>
Perlrequire /usr/include/apache/modules/perl/startup.perl
PerlModule Apache::Registry

#
# set Apache::Registry Mode for /perl Alias
#
<Location /perl>
SetHandler  perl-script
PerlHandler Apache::Registry
Options ExecCGI
PerlSendHeader On
</Location>

#
# set Apache::PerlRun Mode for /cgi-perl Alias
#
<Location /cgi-perl>
SetHandler  perl-script
PerlHandler Apache::PerlRun
Options ExecCGI
PerlSendHeader On
</Location>

</IfModule>
eigentlich müsste also alles klappen - tut es aber nicht...und ich weiß nicht warum :((

zu guter letzte noch ein "ls- la"-auszug mit dem cgi-bin:

Code: Select all

drwxr-xr-x    2 root     root           72 Jun  1 16:05 cgi-bin
in dessen inhalt

Code: Select all

drwxr-xr-x    2 root     root           72 Jun  1 16:05 .
drwxr-xr-x    6 root     root          144 Dec  2 14:53 ..
-rwxr-xr-x    1 root     root           86 Jun  1 15:33 test.pl
Ich hoffe Ihr könnt mir helfen!

cu,

Sebastian
mark
Posts: 295
Joined: 2003-04-15 16:48
Location: Oldenburg
Contact:
 

Re: Perl funktioniert nicht...

Post by mark »

Hi,

spontan würde ich sage: suexec problem...

Schau mal in die suexec.log im apache/logs verzeichnis.

Benutzt du virtual hosts ?

Gruß
Mark
sascha
Posts: 1325
Joined: 2002-04-22 23:08
 

Re: Perl funktioniert nicht...

Post by sascha »

Mit Sicherheit liegt es daran, dass die Datei root gehört.
cbn5
Posts: 8
Joined: 2003-05-29 11:59
 

Re: Perl funktioniert nicht...

Post by cbn5 »

Code: Select all

drwxrwxrwx    2 root     root           72 Jun  1 21:16 .
drwxr-xr-x    6 root     root          144 Dec  2 14:53 ..
-rwxr-xr-x    1 ftp      ftp           222 Jun  1 21:16 test.pl
geht immer noch net...

ja, ich benutze virtual hosts, aber mal davon abgesehen das die aus irgendeinem grund auch nicht funktionieren geht es hier um das cgi-bin im serverroot...

die suexec.log finde ich nicht...error_log und access_log existieren, die von dir gennante datei kann allerdings auch "find / -name suexec.log -print" nicht finden

cu,

Sebastian
cbn5
Posts: 8
Joined: 2003-05-29 11:59
 

Re: Perl funktioniert nicht...

Post by cbn5 »

bitte helft mir...ich komme da net weiter
jamesb
Posts: 661
Joined: 2002-05-08 15:35
Location: Karlsruhe
Contact:
 

Re: Perl funktioniert nicht...

Post by jamesb »

Mach mal ein "locate suexec |grep log". So findest du deine suexec-Logdatei auf alle Fälle. Und dann schau darin nach, was er zu meckern hat. Wenn du dann weiter Probleme hast, melde dich nochmal :-)

JamesB
Post Reply