Cataly...2::MP19(3pm)
π Catalyst::Engine::Apache2::MP19 π
okay bestie, so this is the Catalyst::Engine::Apache2::MP19 page β that's the Catalyst Apache2 mod_perl 1.99x Engine, and it's filed under section 3pm of the perl docs. yes we're going deep into the mod_perl lore today. grab a π and let's go.
β¨ NAME β¨
Catalyst::Engine::Apache2::MP19 β the Catalyst engine that is specifically built for Apache2 with mod_perl version 1.99x. that's it. that's the name. iconic.
πΈ SYNOPSIS πΈ
here's the whole setup, no cap. you're setting up your Catalyst app as a mod_perl 1.99x application in httpd.conf:
# 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>
that's literally it bestie, copy it, tweak the paths, slay π
π¦ DESCRIPTION π¦
This is the Catalyst engine specialized for Apache2 mod_perl version 1.99x. very niche, very demure, very specific. π
π WARNING π
β οΈ okay so real talk: mod_perl 1.99 was the beta version for mod_perl 2.0. Upgrading to 2.0 is strongly recommended. like. genuinely. please. π«Ά
π CGI ISSUES π
not the CGI drama... π so to run Catalyst under mod_perl 1.99 you will need to downgrade CGI to version 3.07, because it has dropped support for 1.99 in later versions. so if you're on a newer CGI and everything's on fire, that's why. not me finding out the hard way fr fr.
π ModPerl::Registry π
so while this method is not recommended, you can also run your Catalyst application via a ModPerl::Registry script. just so you know it exists, bestie.
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>
and then script/myapp_registry.pl β you will need to create this yourself, it does not come pre-made:
#!/usr/bin/perl
use strict;
use warnings;
use MyApp;
MyApp->handle_request( Apache::RequestUtil->request );
there you go, that's the whole thing. π§
π METHODS π
β ok_constant
that's the one and only method listed here. ok_constant. periodt. π
π₯ SEE ALSO π₯
go read these next, bestie, they're the whole friend group:
CatalystCatalyst::EngineCatalyst::Engine::Apache2
π AUTHORS π
the legends who made this happen, show some respect:
- 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.
and that's the whole page, bestie!! β¨ this was perl v5.36.0, dated 2022-12-06, and it lives under Cataly...2::MP19(3pm) in the perl docs. go forth and mod_perl responsibly. mwah. ππ¦πΈ
π¦ where this page comes from
- debian bookworm: libcatalyst-engine-apache-perl 1.16-3 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- debian trixie: libcatalyst-engine-apache-perl 1.16-3 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu noble: libcatalyst-engine-apache-perl 1.16-3 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu resolute: libcatalyst-engine-apache-perl 1.16-3 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu stonking: libcatalyst-engine-apache-perl 1.16-3 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms