Catalyst apache2 mod_perl 1.99x engine
# Set up your Catalyst app as a mod_perl 1.99x application in httpd.conf
PerlSwitches -I/var/www/MyApp/lib
# Preload your entire application
PerlModule MyApp
<VirtualHost *>
ServerName myapp.hostname.com
DocumentRoot /var/www/MyApp/root
<Location />
SetHandler modperl
PerlResponseHandler MyApp
</Location>
# you can also run your app in any non-root location
<Location /some/other/path>
SetHandler perl-script
PerlResponseHandler MyApp
</Location>
# Make sure to let Apache handle your static files
# (It is not necessary to remove the Static::Simple plugin
# in production; Apache will bypass Static::Simple if
# configured in this way)
<Location /static>
SetHandler default-handler
</Location>
# If not running at a root location in a VirtualHost,
# you'll probably need to set an Alias to the location
# of your static files, and allow access to this location:
Alias /myapp/static /filesystem/path/to/MyApp/root/static
<Directory /filesystem/path/to/MyApp/root/static>
allow from all
</Directory>
<Location /myapp/static>
SetHandler default-handler
</Location>
</VirtualHost>
This is the Catalyst engine specialized for Apache2 mod_perl version 1.99x.
mod_perl 1.99 was the beta version for mod_perl 2.0. Upgrading to 2.0 is strongly recommended.
In order to run Catalyst under mod_perl 1.99 you will need to downgrade \s-1CGI\s0 to version 3.07, as it has dropped support for 1.99 in later versions.
While this method is not recommended, you can also run your Catalyst application via a ModPerl::Registry script.
httpd.conf:
PerlModule ModPerl::Registry Alias / /var/www/MyApp/script/myapp_registry.pl/
<Directory /var/www/MyApp/script> Options +ExecCGI </Directory>
<Location /> SetHandler perl-script PerlResponseHandler ModPerl::Registry </Location>
script/myapp_registry.pl (you will need to create this):
#!/usr/bin/perl
use strict; use warnings; use MyApp;
MyApp->handle_request( Apache::RequestUtil->request );
Catalyst, Catalyst::Engine, Catalyst::Engine::Apache2.
Sebastian Riedel <[email protected]>
Christian Hansen <[email protected]>
Andy Grundman <[email protected]>
Tomas Doran <[email protected]>
This software is copyright (c) 2010 by The \*(L"\s-1AUTHORS\s0\*(R".
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.