SYNOPSIS

    # 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>

DESCRIPTION

This is the Catalyst engine specialized for Apache2 mod_perl version 1.99x.

WARNING

mod_perl 1.99 was the beta version for mod_perl 2.0. Upgrading to 2.0 is strongly recommended.

CGI ISSUES

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.

ModPerl::Registry

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 );

METHODS

ok_constant

RELATED TO Catalyst::Engine::Apache2::MP19…

Catalyst, Catalyst::Engine, Catalyst::Engine::Apache2.

AUTHORS

COPYRIGHT AND LICENSE

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.