Scroll to navigation

Catalyst::Engine::Apache(3pm) User Contributed Perl Documentation Catalyst::Engine::Apache(3pm)

NAME

Catalyst::Engine::Apache - 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".

SEE ALSO

Catalyst Catalyst::Engine.

AUTHORS

  • Sebastian Riedel <sri@cpan.org>
  • Christian Hansen <ch@ngmedia.com>
  • Andy Grundman <andy@hybridized.org>
  • Tomas Doran <bobtfish@bobtfish.net>

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.

2022-12-06 perl v5.36.0