Jifty::Script::FastCGI - A FastCGI server for your Jifty application
AddHandler fastcgi-script fcgi FastCgiServer /path/to/your/jifty/app/bin/jifty -initial-env JIFTY_COMMAND=fastcgi Options: --maxrequests maximum number of requests per process --help brief help message --man full documentation
FastCGI entry point for your Jifty application
Set maximum number of requests per process. Read also --man.
Print a brief help message and exits.
Prints the manual page and exits.
When you're ready to move up to something that can handle the increasing load your new world-changing application is generating, you'll need something a bit heavier-duty than the pure-perl Jifty standalone server. FastCGI is what you're looking for.
FastCGI
If you have MaxRequests options under FastCGI in your config.yml, or command-line option --maxrequests=N assigned, the FastCGI process will exit after serving N requests.
--maxrequests=N
# These two lines are FastCGI-specific; skip them to run in vanilla CGI mode AddHandler fastcgi-script fcgi FastCgiServer /path/to/your/jifty/app/bin/jifty -initial-env JIFTY_COMMAND=fastcgi DocumentRoot /path/to/your/jifty/app/share/web/templates ScriptAlias / /path/to/your/jifty/app/bin/jifty/
An alternative to Apache mod_fastcgi is to use mod_fcgid with mod_rewrite. If you use mod_fcgid and mod_rewrite, you can use this in your Apache configuration instead:
DocumentRoot /path/to/your/jifty/app/share/web/templates ScriptAlias /cgi-bin /path/to/your/jifty/app/bin DefaultInitEnv JIFTY_COMMAND fastcgi <Directory /path/to/your/jifty/app/bin> Options ExecCGI SetHandler fcgid-script </Directory> <Directory /path/to/your/jifty/app/share/web/templates> RewriteEngine on RewriteRule ^$ index.html [QSA] RewriteRule ^(.*)$ /cgi-bin/jifty/$1 [QSA,L] </Directory>
It may be possible to do this without using mod_rewrite.
Version 1.4.23 or newer is recommended, and you may adapt this config:
server.modules = ( "mod_fastcgi" ) server.document-root = "/path/to/your/jifty/app/share/web/templates" fastcgi.server = ( "/" => ( "your_jifty_app" => ( "socket" => "/tmp/your_jifty_app.socket", "check-local" => "disable", "fix-root-scriptname" => "enable", "bin-path" => "/path/to/your/jifty/app/bin/jifty", "bin-environment" => ( "JIFTY_COMMAND" => "fastcgi" ), "min-procs" => 1, "max-procs" => 5, "max-load-per-proc" => 1, "idle-timeout" => 20, ) ) )
Versions before 1.4.23 will work, but you should read Plack::Handler::FCGI's lighttpd documentation for how to configure your server.
Since this uses Plack::Handler::FCGI, you might also want to read its documentation on webserver configurations.
Creates a new FastCGI process.
To install Jifty, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Jifty
CPAN shell
perl -MCPAN -e shell install Jifty
For more information on module installation, please visit the detailed CPAN module installation guide.