Problem mit Perl und Apache

Jaridian

kennt sich schon aus
Bin so langsam aber sicher am verzweifeln. :confused

kleines technisches Problem:
Redhat 8.0
perl: 5.80
PHP: 5.0.0b1
Kernel: 2.4.18-14
Apache 2.047

Mein Apache läuft.
PHP-Scripte funktionieren ohne Probleme.
Mein Perl läuft.
Aber es ist mir nicht möglich, ein Perl-Script mit dem Apache zum Laufen zu bringen.
Jedesmal wenn das Skript starten soll / bzw.startet, (Aufruf
über Website) dann:
You don't have permission to access /scripts/script.pl on this server.


Rechte sind gesetzt auf: 755/777

in der http.conf:
DocumentRoot "/srv/http/htdocs"

ScriptAlias /cgi-bin/ "/srv/http/htdocs/scripts/"

<Directory "/srv/http/htdocs/scripts">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>

AddHandler cgi-script .cgi
AddHandler cgi-script .pl

die error_log sagt folgendes:
Options ExecCGI is off in this directory: /srv/http/htdocs/scripts/script.pl

das script:
#!/usr/bin/perl
print "Content-type: text/html\r\n\r\n";
print "Hello, World.";


Was mache ich falsch ? :confused
 
> Options ExecCGI is off in this directory:

Übersetzung:
Die CGI-Ausführung ist für das Verzeichnis( /srv/http/htdocs/scripts/script.pl ) abgeschaltet

Denn die CGI-Scripte liegen normalerweise unter http://server/cgi-bin/ !
Da gibt's auch garantiert in deiner httpd.conf einen Eintrag zu, und in dieses Verzeichnis gehören Scripte rein und nicht in "htdocs". Der Eintrag sieht dann etwa so aus:
Code:
<Location /cgi-bin>
AllowOverride None
Options +ExecCGI -Includes
SetHandler cgi-script
</Location>
 
hmmm, das funzt aber so wie du sagtest auch leider nicht.

DocumentRoot "/"

ScriptAlias /cgi-bin/ "/cgi-bin/"

<Directory "/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>

<Location /cgi-bin>
AllowOverride None
Options +ExecCGI -Includes
SetHandler cgi-script
</Location>

jetzt die fehlermeldung in der logerror: Premature end of script headers
 
Zuletzt bearbeitet:
Das ist der nächste nicht sehr ungewöhnliche Fehler bei einem Anfänger(hab' ich mich genauso mit rumärgern dürfen, ich denke mal im Webbereich bin ich jetzt schon Anfänger - Level 2 :) ).

Die wahrscheinlichsten Ursachen:

a) Das Perl-Script ist nicht ausührbar(chmod)
b) Das Script ist im DOS-Textformat(statt im Unix-Format(CR/LF),dos2unix oder recode ibmpc..latin1 oder vi )
c) Das Script enthält einen Fehler( läuft es als Perl-Script auf der Kommandozeile ?)
 
:) fork

zu a.) cmod 755 bzw. 777
zu b.) im Unix-Format mittels Textpad
zu c.) perkommandozeile null probleme mit scripten, problemlos ausführbar

frage? :confused
könnte es daran liegen weil auf meinem server ein kernel problem hinsichtlich btime vorliegt?
neu compilen ist nicht so einfach, da es nen dedizierter server ist, wenn die verbindung abbricht, dann komme ich nicht mehr ohne weiteres ran. d.h. dann muss der support den server neu aufsetzen und das kostet :(
 
Noch ein paar abschliessende Gedanken:

Wenn es kein Konfigurationsfehler ist(meine Intuition sagt mir das es einer ist), dann kann Dir das helfen

- Nimm mal einen anderen Texteditor
- Schmeiss den Apache 2.0.47 mal runter und teste mal die letzte stable von 1.3.x
- Wenn's mit 1.3.x funktioniert zieh' die die neueste stabile von 2.0.x(rpmseek,...)

oder frag' noch mal im Linuxforum(www.linuxforen.de) nach.
 
Wenn es kein Konfigurationsfehler ist(meine Intuition sagt mir das es einer ist)
ist es bestimmt, aber ich weis nicht mehr wo ich jetzt noch die fehlersuche ansetzen kann? :confused
Nimm mal einen anderen Textedito
habe ich gemacht, mit vi auf der console
trotzdem negativ
Schmeiss den Apache 2.0.47 mal runter und teste mal die letzte stable von 1.3.x
auch selbes problem.
perl hatte ich inzwischen auch neu installiert 5.8.1
oder frag' noch mal im Linuxforum(www.linuxforen.de) nach.
hatte ich schon im Mai getan ;), das problem ist bekannt aber keine lösung. deshalb hatte ich es hier versucht.
hatte auch den support von dem server gebeten dort mal nachzuschauen, würden sie tun, aber nur gegen bezahlung = 50$ die stunde :eek:
danke dir aber trotzdem für deine bemühungen, vielleicht finde ich den fehler ja noch und dann sage ich: :wand
greets, jaridian
 
Oben