Externes Perl (kein Plugin) für Localhost zum Laufen bringen

Irgendwelche Probleme mit XAMPP für Windows? Dann ist hier genau der richtige Ort um nachzufragen.

Externes Perl (kein Plugin) für Localhost zum Laufen bringen

Postby Danwe » 04. February 2009 20:10

Hi,

ich habe es jetzt lang genug mit dem Perl Plugin für XAMPP versucht, aber die Module die ich brauch nicht richtig zum Laufen bekommen.
Nun habe ich mir Strawberry Perl auf dem Rechner installiert (nicht im XAMPP-Verzeichnis) und die Module laufen alle wunderbar.
Leider kann ich nun keine Perl-Skripte mehr unter dem Localhost ausführen. Was genau muss ich ändern, damit ich für den Localhost Perl-Module ausführen lassen kann und nicht der Plaintext der Module im Browser angezeigt wird?

Hab gelesen das geht z.B. über die .htaccess, aber das ist bei mir schon mal fehlgeschlagen. Ich nehm an man muss Perl erstmal irgendwie beim Apache bekannt machen... Hab nicht wirklich Ahnung davon. Hoffe hier kann jemand helfen.

Danke schon mal!
Danwe
 
Posts: 7
Joined: 24. January 2009 18:55

Re: Externes Perl (kein Plugin) für Localhost zum Laufen bringen

Postby Nobbie » 05. February 2009 09:41

Du mußt in httpd.conf an irgendeiner Stelle für Perlscripts den cgi-handler deklarieren:

Code: Select all
AddHandler cgi-script .pl


Es gibt fast die gleiche Zeile mit .cgi statt mit .pl, da kannst Du die obige Zeile direkt dahinter schreiben.

Außerdem muss in allen Perlscripts in der ersten Zeile, die sog. "Shebang" Zeile der Perlinterpreter angegeben werden, damit Apache ihn starten kann. Das sieht dann ungefähr so aus:

Code: Select all
#!c:/perl/bin/perl.exe


Wenn in dem Pfadnamen ein Leerzeichen sein sollte, dann muss der Pfad in Anführungszeichen stehen (das kann man sowieso machen, auch wenn kein Leerzeichen drin steht):

Code: Select all
#!"c:/strawberry perl/bin/perl.exe"


Und als letztes mußt Du überprüfen, ob im <Directory ...> Block für das DocumentRoot-Verzeichnis (bei Xampp normalerweise c:/xampp/htdocs) die Option ExecCGI angegeben ist (da sind auch noch andere Optionen angegeben, Du mußt nur schauen, dass ExecCGI dabei ist). Das sieht dann ungefähr so aus:

Code: Select all
<Directory c:/xampp/htdocs>
...
    Options Indexes FollowSymLinks ExecCGI
...
</Directory>


Danach Apache neu starten und dann muss es gehen. Achte darauf, dass in (oder über) dem Testverzeichnis, wo Du das Script ausführen willst, keine .htaccess Datei liegt, deren Inhalt ggf. die Ausführung von Perl-Scripts wieder verhindert (das ist nämlich möglich und könnte theoretisch auch jetzt schon die Ursache für Dein Problem sein, überprüfe das in jedem Fall).
Nobbie
 
Posts: 13176
Joined: 09. March 2008 13:04

Re: Externes Perl (kein Plugin) für Localhost zum Laufen bringen

Postby Danwe » 05. February 2009 23:28

Vielen Dank für die kompetente Hilfe! Läuft alles super nachdem ich die Konfiguration angepasst habe.
Danwe
 
Posts: 7
Joined: 24. January 2009 18:55


Return to XAMPP für Windows

Who is online

Users browsing this forum: No registered users and 68 guests