Hello B. I just reread your question it is MP2. For ModPerl2 there is another answer in the FAQ:
Apache::Registry, Apache::PerlRun and Friends Apache::Registry, Apache::PerlRun and other modules from the registry family now live in the ModPerl:: namespace to avoid collisions with the versions from 1.0. To run the Apache::Registry module from mod_perl 1.0 you have to load Apache::compat at the startup: file:startup.pl: ---------------- use Apache2; # if you have 1.0 and 2.0 installed use Apache::compat (); use lib ...; # to find 1.0x Apache::Registry then in httpd.conf: Alias /perl /path/to/perl/scripts <Location /perl> Options +ExecCGI SetHandler perl-script PerlResponseHandler Apache::Registry </Location> Notice that Apache::compat has to be loaded before CGI.pm if the latter module is used. META: complete META: document that for now ModPerl::Registry doesn't chdir() into the script's dir like Apache::Registry does, because chdir() affects the whole process under threads. Kind regards, Gerard ter Haar > > From the FAQ: > My CGI/Perl Code Gets Returned as Plain Text Instead of Being Executed by the > Webserver > > Check your configuration files and make sure that the ExecCGI is turned on in your > configurations. > > <Location /perl> > SetHandler perl-script > PerlHandler Apache::Registry > Options ExecCGI > allow from all > PerlSendHeader On > </Location> > > Kind regards > > > I just installed Apache and mod_perl, but for some reason when I execute > > scripts through my Apache server it shows all of the Perl code: > > > > #!C:/Perl/bin/Perl.exe > > print "Content-type: text/html\n\n"; > > > > foreach $var (sort(keys(%ENV))) { > > $val = $ENV{$var}; > > $val =~ s|\n|\\n|g; > > $val =~ s|"|\\"|g; > > print "${var}=\"${val}\"\n"; > > } > > > > I got the path found on the first line from an example Perl script > > (printenv.pl) that came with the latest version of the Apache server. > > > > Could anybody give me a hand with a suggestion or two? > > > > > >