.\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "Catalyst::Manual::Deployment 3pm" .TH Catalyst::Manual::Deployment 3pm 2024-03-30 "perl v5.38.2" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH NAME Catalyst::Manual::Deployment \- Deploying Catalyst .SH "DEPLOYMENT OPTIONS" .IX Header "DEPLOYMENT OPTIONS" Catalyst applications are most often deployed as a FastCGI or mod_perl application (with FastCGI being the recommended option). However, as Catalyst is based on the PSGI specification, any web handler implementing that specification can be used to run Catalyst applications. .PP This documentation most thoroughly covers the normal and traditional deployment options, but will mention alternate methods of deployment, and we welcome additional documentation from people deploying Catalyst in non-standard environments. .SS "Deployment in a shared hosting environment" .IX Subsection "Deployment in a shared hosting environment" Almost all shared hosting environments involve deploying Catalyst as a FastCGI application on Apache. You will usually want to have a set of libraries specific to your application installed on your shared host. .PP Full details of deploying Catalyst in a shared hosting environment are at Catalyst::Manual::Deployment::SharedHosting. .SS FastCGI .IX Subsection "FastCGI" FastCGI is the most common Catalyst deployment option. It is documented generally in Catalyst::Manual::Deployment::FastCGI, and there are specific instructions for using FastCGI with common web servers below: .PP \fIApache\fR .IX Subsection "Apache" .PP Catalyst::Manual::Deployment::Apache::FastCGI .PP \fInginx\fR .IX Subsection "nginx" .PP Catalyst::Manual::Deployment::nginx::FastCGI .PP \fIlighttpd\fR .IX Subsection "lighttpd" .PP Catalyst::Manual::Deployment::lighttpd::FastCGI .PP \fIMicrosoft IIS\fR .IX Subsection "Microsoft IIS" .PP Catalyst::Manual::Deployment::IIS::FastCGI .SS mod_perl .IX Subsection "mod_perl" Traditionally a common deployment option for dedicated applications, mod_perl has some advantages and disadvantages over FastCGI. Use of mod_perl is documented in Catalyst::Manual::Deployment::Apache::mod_perl. .SS "Development Server" .IX Subsection "Development Server" It is possible to deploy the Catalyst development server behind a reverse proxy. This may work well for small-scale applications which are in an early development phase, but which you want to be able to show to people. See Catalyst::Manual::Deployment::DevelopmentServer. .SS PSGI .IX Subsection "PSGI" Catalyst can be deployed with any PSGI-compliant handler. See Catalyst::PSGI for more information; a list of possible deployment servers are shown below: .PP \fINGINX Unit\fR .IX Subsection "NGINX Unit" .PP NGINX Unit is a lightweight, dynamically configurable web app server that supports running PSGI-capable apps. .PP \fIStarman\fR .IX Subsection "Starman" .PP Starman is a high-performance Perl server implementation, which is designed to be used directly (rather than behind a reverse proxy). It includes HTTP/1.1 support, chunked requests and responses, keep-alive, and pipeline requests. .PP \fIStarlet\fR .IX Subsection "Starlet" .PP Starlet is a standalone HTTP/1.0 server with keepā€alive support which is suitable for running HTTP application servers behind a reverse proxy. .PP \fITwiggy\fR .IX Subsection "Twiggy" .PP Twiggy is a high-performance asynchronous web server. It can be used in conjunction with Catalyst, but there are a number of caveats which mean that it is not suitable for most deployments. .SS Chef .IX Subsection "Chef" Chef is an open-source systems integration framework built specifically for automating cloud computing deployments. A Cookbooks demonstrating how to deploy a Catalyst application using Chef is available at and . .SH AUTHORS .IX Header "AUTHORS" Catalyst Contributors, see Catalyst.pm .SH COPYRIGHT .IX Header "COPYRIGHT" This library is free software. You can redistribute it and/or modify it under the same terms as Perl itself.