Apache + Perl
Silvio Siefke
- cgi
0 Robert
Ich hab eine Frage zur Perl + PHP!
Ich habe mir ActiveState Perl heruntergeladen und installiert!
Folgende Änderungen habe ich in der conf Datei der Apache vorgenommen:
CGI-bin Verzeichnis erstellt in der Document Root
Zeile 610 Script Alias an Doc.-Root angepasst
Zeile 825 das # vor der Zeile AddHandler cgi-script .cgi .pl weggemacht
Zeile 335 Options Indexes FollowSymLinks MultiViews geändert in
Options Indexes FollowSymLinks ExecCGI
abgespeichert!
Dann folgendes Script geschrieben:
#!C:\usr\bin\perl.exe
use CGI qw(:standard) ;
print header();
print "Hello, world";
abgespeichert unter hello.pl!
Dann unter den Link localhost/cgi-bin/hello.pl aufgerufen, als Antwort bekam ich
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, admin@dip0.t-ipconnect.de and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.
Die Error.log:
[Mon Nov 04 18:00:31 2002] [error] [client 127.0.0.1] BEGIN failed--compilation aborted at c:\PROGRA~1\APACHE~1\apache\htdocs\cgi-bin\hello.pl line 2.
Frage woran liegt das! Was ist der Fehler!
Die Error.log:
[Mon Nov 04 18:00:31 2002] [error] [client 127.0.0.1] BEGIN failed--compilation aborted at c:\PROGRA~1\APACHE~1\apache\htdocs\cgi-bin\hello.pl line 2.
Hast Du das Perl CGI-Modul wirklich installiert?
Robert
Die Error.log:
[Mon Nov 04 18:00:31 2002] [error] [client 127.0.0.1] BEGIN failed--compilation aborted at c:\PROGRA~1\APACHE~1\apache\htdocs\cgi-bin\hello.pl line 2.
Hast Du das Perl CGI-Modul wirklich installiert?
Robert
Ich bin laut der anliegenden Anleitungen vorgegangen:
ActivePerl-Installation
ActivePerl in ein Verzeichnis der Wahl (Empfehlung: c:/usr/) installieren.
Bereits jetzt kann Perl über die Kommandozeile genutzt werden.
Die Datei c:/programme/apache/conf/httpd.conf in einem Texteditor öffnen.
cgi-bin-Verzeichnis im Document Root anlegen (etwa d:/www/cgi-bin/)
Etwa Zeile 610 entsprechend dem Document Root wie folgt anpassen: ScriptAlias /cgi-bin/ "D:/www/cgi-bin/"
Zeile 825 Kommentar entfernen (#) und anpassen: AddHandler cgi-script .cgi .pl.
Zeile 335: Options Indexes FollowSymLinks MultiViews in Options Indexes FollowSymLinks ExecCGI ändern.
httpd.conf speichern
Perl kann nun mit folgendem Beispiel getestet werden (Pfad zum Interpreter ggf. ändern):
#!C:\usr\bin\perl.exe
use CGI qw(:standard) ;
print header();
print "Hello, world";
Script in cgi-bin speichern und über http://127.0.0.1/cgi-bin/hello.pl aufrufen
Weiter habe ich nichts gemacht!
Gruß Silvio
AIM NSAAGENTEUROPE