nach viel Googlen, FAQs und Konfigurationsanleitungen wälzen, habe ich mich doch entschlossen, mich mit meinem Problem hierher zu wenden.
Ich habe unter Windows XAMPP 1.4.9 und die aktuelle ActivePerl-Version installiert (da ich für das XAMPP Perl-Addon einige Module nicht nachinstallieren konnte).
Wenn ich jetzt ein Perl-Script aufrufe (konkret geht es um das Check-Script des W3C-Validators, den ich hier lokal installieren wollte), bekomme ich im Browser den Quelltext angezeigt, statt dass das Script ausgeführt wird. Im Apache Error Log findet sich dazu kein Eintrag.
Die Shebang (#!C:/Perl/bin/perl.exe) ist korrekt und über die Kommandozeile lässt sich das Script ausführen, also vermute ich ein Konfigurationsproblem.
Für den Validator habe ich mir einen virtuellen Host angelegt. Hier der entsprechende Ausschnitt aus der httpd.conf:
- Code: Select all
<VirtualHost *:80>
ServerName validator.localhost:80
DocumentRoot "C:/Tools/xampp/validator/htdocs"
ErrorLog logs/error_validator.log
CustomLog logs/access_validator.log common
ScriptAlias /cgi-bin "C:/Tools/xampp/validator/httpd/cgi-bin"
ScriptAlias /check "C:/Tools/xampp/validator/httpd/cgi-bin/check"
AddType text/html .html
AddOutputFilter INCLUDES .html
AddHandler server-parsed .html
<Directory "C:/Tools/xampp/validator/htdocs">
Options ExecCGI Includes Indexes MultiViews
AllowOverride None
Order deny,allow
Allow from localhost
</Directory>
<Directory "C:/Tools/xampp/validator/httpd/cgi-bin">
Options ExecCGI Includes Indexes MultiViews
AllowOverride None
Order deny,allow
Allow from localhost
LoadFile "c:/perl/bin/perl58.dll"
LoadModule perl_module modules/mod_perl.so
SetHandler perl-script
#PerlResponseHandler ModPerl::Registry
PerlOptions +ParseHeaders
</Directory>
</VirtualHost>
Das habe ich mir größtenteils aus dieser SelfHTML-Seite, dem hiesigen Forumbeitrag zu Virtual Hosts und der perl.conf-Datei aus dem XAMPP-Perl-Addon zusammenkopiert.
Wenn noch irgendwelche Angaben benötigt werden, ruhig bescheid sagen. Würde mich freuen, wenn dazu jemand eine Idee hat.
Grüße,
Mensler