Einbindung von Perl in Apache2 Webserver
Hayno
- perl
Hallo,
ich habe mit das Paket (wampp-0.2.4c = Apache2, MySQL, Perl, PHP) aus dem Netz geladen und nach Anleitung (auf Win2000) installiert. Soll auf einen Webserver mit Perl und PHP hinauslaufen.
Die Standarttests für PHP und Perl funktionieren auch (sofern ich den "localhost" teste.
Wenn ich jetzt aber versuche für einen <VirtualHost> ein Verzeichnis für die Verarbeitung von Perl oder PHP zu deklarieren, bekomme ich den Fehler, dass der Apache2 nicht mehr startet.
Kommentiere ich zwei Zeilen aus, läuft er wieder, allerdings nicht dann ohne den gewünschten Effekt:
<VirtualHost 192.168.1.16:80>
ServerAdmin webmaster@test.de
DocumentRoot D:/Test
ServerName test
ErrorLog D:/Test/logs/error.log
CustomLog D:/Test/logs/access.log common
LogFormat "%h %l %u %t "%r" &>s %b" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
<Location /cgi-bin>
AddHandler perl-script .pl
PerlHandler Apache::Registry # <--- Fehlerquelle Nummer 1
Options ExecCGI
PerlSendHeader On # <--- Fehlerquelle Nummer 2
</Location>
# das hier hat auch nicht funktioniert
#<Directory "D:/Test/cgi-bin/">
#SetHandler perl-script
#PerlHandler Apache::Registry
#Options ExecCGI
#PerlSendHeader On
#</Directory>
</VirtualHost>
Was mache ich falsch. (heul!) Die Scripte, sei es PHP oder CGI lassen sich in den angegebenen Ordner nicht starten.
Wer kann mir helfen?
Gruss
Hayno
Hi,
PerlHandler Apache::Registry # <--- Fehlerquelle Nummer 1
PerlSendHeader On # <--- Fehlerquelle Nummer 2
Was mache ich falsch.
Du verwendest Direktiven, die offenbar kein Modul Deines Apache-Servers verarbeiten kann.
Hast Du denn einen Perl-Interpreter in den Apache-Code eingebunden (statisch oder dynamisch)?
Viele Grüße
Michael
Hallo Michael!
Erst einmal DANKE für die schnelle Antwort.
Ich habe laut Anleitung das Modul in den Modules Ordner von Apache geworfen, die Umgebungsvariable PATH im Betriebssystem auf das Verzeichnis mit Perl gesetzt und in der httpd.conf das Modul mit "LoadModule perl_module modules/mod_perl.so" hinzugefügt.
Da ich auf diesem Gebiet Anfänger bin, schliesse ich also Fehler meinerseits nicht aus.
Der Interpreter kann Perl verarbeiten, das ist nicht das Problem. Wenn ich Testscripte im Homeverzeichnis teste, funktionieren sie nur eben nicht bei den VirtualHosts. Und genau das verwirrt mich ein wenig. Die Technik funzt, lässt sich aber mit den Wegen, die ich versucht habe, nicht auf andere Verzeichnisse übertragen.
Kennst Du Dich da aus?
Viele Grüsse
Hayno
P.S. ich geh jetzt ins Bett. Werde also erst morgen wieder ins Forum sehen. Bis dann.
Hallo,
Ich habe laut Anleitung das Modul in den Modules Ordner von Apache geworfen, die
Umgebungsvariable PATH im Betriebssystem auf das Verzeichnis mit Perl gesetzt und in der
httpd.conf das Modul mit "LoadModule perl_module modules/mod_perl.so" hinzugefügt.
Wie siehts mit 'AddModule' aus?
Wenn ein Modul geladen worden ist, ist es noch lange nicht in der Modul-Liste eingebunden.
Dafuer sorgt 'AddModule'.
Gruesse,
CK
Ich habe laut Anleitung das Modul in den Modules Ordner von Apache geworfen, die
Umgebungsvariable PATH im Betriebssystem auf das Verzeichnis mit Perl gesetzt und in der
httpd.conf das Modul mit "LoadModule perl_module modules/mod_perl.so" hinzugefügt.
Wie siehts mit 'AddModule' aus?
Wenn ein Modul geladen worden ist, ist es noch lange nicht in der Modul-Liste eingebunden.
Dafuer sorgt 'AddModule'.
Apache 2.x kennt diese Direktive überhaupt nicht.
Hallo Bjoern,
Apache 2.x kennt diese Direktive überhaupt nicht.
Oha, tut mir leid, ich hatte das Apache 2 uebersehen.
Gruesse,
CK
Hallo Christian,
Wie siehts mit 'AddModule' aus?
Wenn ein Modul geladen worden ist, ist es noch lange nicht in der Modul-Liste eingebunden.
Dafuer sorgt 'AddModule'.
...ja auch ich war bezüglich der AddModule Anweisung erst etwas verunsichert, hatte dann aber auch gelesen, dass die beim Apache2 nicht mehr von Nöten sind.
Vielleicht noch einmal meine Problembeschreibung:
Die Module Perl und PHP funktioniren eigentlich, aber nur im localhost-Verzeichnis. Genau das hätte ich aber gerne erweitert. Ich möcht auch, dass in meinen VirtualHost-Verzeichnissen PHP und Perl dort funktionieren, wo ich es will und nicht der Apache.
Eigentlich soll das nicht so schwer sein, ist es aber offensichtlich doch.
Gruss
Hayno
Vielleicht noch einmal meine Problembeschreibung:
Die Module Perl und PHP funktioniren eigentlich, aber nur im localhost-Verzeichnis. Genau das hätte ich aber gerne erweitert. Ich möcht auch, dass in meinen VirtualHost-Verzeichnissen PHP und Perl dort funktionieren, wo ich es will und nicht der Apache.
Eigentlich soll das nicht so schwer sein, ist es aber offensichtlich doch.
Ich frage mich immernoch, wie du darauf kommst, mod_perl würde funktionieren. Bist du dir sicher, dass da keine CGI-Scripte laufen?