Skripten werden nicht ausgeführt

Alles, was den Apache betrifft, kann hier besprochen werden.

Skripten werden nicht ausgeführt

Postby maniac_2k » 01. August 2006 14:15

Hallo!

Ich versuche meinen Apache Server ein Skript ausführen zu lassen. Die Skripten sind im cgi-bin Verzeichnis. Es handelt sich dabei um Perl Skripten, die auf dem Server ausführbart sind. ActivePerl ist installiert.

In der httpd.conf gebe ich die Direktive ScriptAlias folgend an:

ScriptAlias /cgi-bin/ "C:/apache/cgi-bin/"

Bei der Ausführung eines Skripts, also z.B. beim Aufruf des Skripts test.pl:

http://localhost:8080/cgi-bin/test.pl

Bekomme ich einen Fehler mit dem HTTP Fehlercode 500 "Internal Server Error" zurück.

Im error.log steht dann:

Code: Select all
[Tue Aug 01 14:43:07 2006] [error] [client 127.0.0.1] (OS 3)Das System kann den angegebenen Pfad nicht finden.  : couldn't create child process: 720003: test.pl
[Tue Aug 01 14:43:07 2006] [error] [client 127.0.0.1] (OS 3)Das System kann den angegebenen Pfad nicht finden.  : couldn't spawn child process: C:/apache/cgi-bin/test.pl


Aber die Datei existiert dort, denn ich bekomme ja keinen "Not Found" Fehler (das ist 404, oder?). Naja, dass ein Teil des Fehlers in Deutsch heißt wohl, dass das Betriebssystem (in deutsch) irgendetwas nicht findet. Ich kann mir nur nicht denken was...

Kann mir bitte jemand einen Tipp geben?

Danke,

Maniac
maniac_2k
 
Posts: 4
Joined: 01. August 2006 13:56

Postby Wiedmann » 01. August 2006 14:17

Naja, dass ein Teil des Fehlers in Deutsch heißt wohl, dass das Betriebssystem (in deutsch) irgendetwas nicht findet. Ich kann mir nur nicht denken was...

Es wird wohl Perl nicht da finden wo du es angibst.
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby maniac_2k » 01. August 2006 14:26

Das kann sein. Ich habe angenommen, dass das Setzen der Windows Umgebungsvariable PATH reicht.

Jetzt mal eine dumme Frage: Wo und wie gebe ich den die Position des Perl Interpreters für Apache an?

Maniac
maniac_2k
 
Posts: 4
Joined: 01. August 2006 13:56

Postby Wiedmann » 01. August 2006 15:07

Ich habe angenommen, dass das Setzen der Windows Umgebungsvariable PATH reicht.

Kommt darauf an...

Jetzt mal eine dumme Frage: Wo und wie gebe ich den die Position des Perl Interpreters für Apache an?

In der ersten Zeile des Scriptes.
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby maniac_2k » 01. August 2006 15:31

Ok - Danke. Das scheint zu klappen, jedoch bekomme ich jetzt einen Zugriffsfehler im error.log. Also habe ich das Verzeichnis mit dem Perl Interpreter für Benutzer "Jeder" freigegeben (Vollzugriff).

Geht nicht. Aber mir sind keine anderen Möglichkeiten bekannt, Benutzerzugriff unter Windows (in meinem Fall 2000) zu steuern.

Gruß,
Maniac
maniac_2k
 
Posts: 4
Joined: 01. August 2006 13:56

Postby Wiedmann » 01. August 2006 15:34

Wenn du Hilfe willst, solltest du schon die genaue Fehlermeldung posten...
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby maniac_2k » 01. August 2006 15:42

Mein Fehler.

Fehlermeldung ist:
Code: Select all
[Tue Aug 01 16:35:05 2006] [error] [client 127.0.0.1] (OS 5)Zugriff verweigert  : couldn't create child process: 720005: test.pl
[Tue Aug 01 16:35:05 2006] [error] [client 127.0.0.1] (OS 5)Zugriff verweigert  : couldn't spawn child process: C:/apache/cgi-bin/test.pl
maniac_2k
 
Posts: 4
Joined: 01. August 2006 13:56

Postby Wiedmann » 01. August 2006 15:54

Wie sieht denn die erste Zeile jetzt von dir aus?
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany


Return to Apache

Who is online

Users browsing this forum: No registered users and 223 guests