Catalyst::Engine::Apache(3) Catalyst Apache Engines

SYNOPSIS

For example Apache configurations, see the documentation for the engine that corresponds to your Apache version.

"Catalyst::Engine::Apache::MP13" - mod_perl 1.3x

"Catalyst::Engine::Apache2::MP19" - mod_perl 1.99x

"Catalyst::Engine::Apache2::MP20" - mod_perl 2.x

DESCRIPTION

These classes provide mod_perl support for Catalyst.

METHODS

$c->engine->apache

Returns an "Apache", "Apache::RequestRec" or "Apache2::RequestRec" object, depending on your mod_perl version. This method is also available as $c->apache.

$c->engine->return

If you need to return something other than OK from the mod_perl handler, you may set any other Apache constant in this method. You should only use this method if you know what you are doing or bad things may happen! For example, to return DECLINED in mod_perl 2:

    use Apache2::Const -compile => qw(DECLINED);
    $c->engine->return( Apache2::Const::DECLINED );

NOTES ABOUT LOCATIONMATCH

The Apache engine tries to figure out the correct base path if your app is running within a LocationMatch block. For example:

    <LocationMatch ^/match/(this|that)*>
        SetHandler          modperl
        PerlResponseHandler MyApp
    </LocationMatch>

This will correctly set the base path to '/match/this/' or '/match/that/' depending on which path was used for the request.

In some cases this may not be what you want, so you can disable this behavior by adding this to your configuration:

    PerlSetVar CatalystDisableLocationMatch 1

NOTES ON NON-STANDARD PORTS

If you wish to run your site on a non-standard port you will need to use the "Port" Apache config rather than "Listen". This will result in the correct port being added to urls created using "uri_for".

    Port 8080

OVERLOADED METHODS

This class overloads some methods from "Catalyst::Engine".
prepare_request($r)
prepare_connection
prepare_query_parameters
prepare_headers
prepare_path
read_chunk
finalize_body
finalize_headers
write

AUTHORS

COPYRIGHT AND LICENSE

This software is copyright (c) 2010 by The ``AUTHORS''.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.