I'm using Apache 2. I know how to handle .pl files as "cgi-script", but mod_perl is supposedly way faster. I successfully built and installed mod_perl, but how do I change httpd.conf so that .pl files will be handled by mod_perl (and not as cgi-script)?
Asked
Active
Viewed 9,940 times
3 Answers
2
The following is untested by myself and can be added to an existing vhost directive file
PerlModule ModPerl::Registry
<Files ~ "\.(pl|cgi)$">
SetHandler perl-script
PerlResponseHandler ModPerl::Registry
Options +ExecCGI
PerlSendHeader On
</Files>
and then any .pl or .cgi files in any of your directories will execute.
How I normally do it due to security:
PerlModule ModPerl::Registry
<Directory /opt/myawesomescripts/>
SetHandler perl-script
PerlResponseHandler ModPerl::Registry
PerlOptions +ParseHeaders
Options +ExecCGI
AllowOverride None
</Directory>
The previous method will deny Directory Browsing if you need that, you should do something like this:
PerlModule ModPerl::Registry
<Directory /var/www/>
Options FollowSymLinks MultiViews ExecCGI Indexes
AddHandler perl-script .cgi .pl
PerlResponseHandler ModPerl::Registry
AllowOverride None
Order allow,deny
allow from all
</Directory>

AndrewPK
- 6,100
- 3
- 32
- 36
1
I'm fairly certain as long as you have the module loaded, you can just add a
AddHandler mod_perl .pl

helloandre
- 10,541
- 8
- 47
- 64