- tested with xampp 1.7.4
- install activeperl (e.g. 5.12.4.1205) to c:\usr
- open a shell c:\usr\bin
- add corresponding repo and install corresponding mod_perl.so (only needed to run as module)
#ppm repo add UWinnipeg http://cpan.uwinnipeg.ca/PPMPackages/12xx/
#ppm install mod_perl
- if running as module copy new mod_perl.so to your-xampp-apache-path\modules
- edit apache.conf add "ScriptInterpreterSource Registry-Strict"
#
# Possible values for the Options directive are "None", "All",
# or any combination of:
# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important. Please see
# http://httpd.apache.org/docs/2.2/mod/core.html#options
# for more information.
#
Options Indexes FollowSymLinks Includes ExecCGI
#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfo AuthConfig Limit
#
AllowOverride All
#
# Controls who can get stuff from this server.
#
Order allow,deny
Allow from all
ScriptInterpreterSource Registry-Strict
- edit your-xammp-apache-path\extra\httpd_perl.conf
- comment out "PerlPostConfigRequire"-line
- if running as non-module comment out LoadFile ... n' LoadModule ... lines
- if running as module correct path/filename
LoadFile "C:/usr/bin/perl512.dll"
LoadModule perl_module modules/mod_perl.so
#PerlPostConfigRequire "C:/dev/xampp/apache/conf/extra/startup.pl"
...
- add following registry entry (you may use
apache_cgi.reg):
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.cgi\Shell\ExecCGI\Command]
@="C:\\usr\\bin\\perl.exe -T"
- restart apache
- test perl via your fav. www-browser and a file w/ following content
#!/usr/bin/perl
print "Content-type:text/html\n\n";
print "hello world";
- optional install HTML::Perlinfo
#ppm install HTML-Perlinfo
- test with your fav. www-browser and a file w/ following content
#!/usr/bin/perl
use HTML::Perlinfo;
use CGI qw(header);
$q = new CGI;
print $q->header;
$p = new HTML::Perlinfo;
$p->info_general;
$p->info_variables;
$p->info_modules;
$p->info_license;