---
name: "FCGI::Engine::PSGI"
section: "3pm"
platform: "linux"
package: "libfcgi-engine-perl"
version: "0.22-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/FCGI::Engine::PSGI"
---

# FCGI::Engine::PSGI(3pm)

Run PSGI applications with FCGI::Engine

## NAME

FCGI::Engine::PSGI - Run PSGI applications with FCGI::Engine

## SYNOPSIS

```
  # in scripts/my_psgi_app_fcgi.pl
  use strict;
  use warnings;
  use FCGI::Engine::PSGI;
  FCGI::Engine::PSGI->new_with_options(
      app => sub {
          my $env = shift;
          [
              200,
              [ 'Content-type' => 'text/html' ],
              [ "Hello World" ]
          ]
      }
  )->run;
  # run as normal FCGI script
  perl scripts/my_psgi_app_fcgi.pl
  # run as standalone FCGI server
  perl scripts/my_psgi_app_fcgi.pl --nproc 10 --pidfile /tmp/my_app.pid \
                                   --listen /tmp/my_app.socket --daemon
  # see also FCGI::Engine::Manager for managing
  # multiple FastCGI backends under one script
```

## DESCRIPTION

This is an extension of FCGI::Engine::Core to support PSGI applications. You can refer to the FCGI::Engine docs for most of what you need to know, the only difference being that instead of a `"handler_class"`, `"handler_method"` and `"handler_args"` you simply have the `"app"` attribute, which is expected to be a PSGI compliant application.

## BUGS

All complex software has bugs lurking in it, and this module is no exception. If you find a bug please either email me, or add the bug to cpan-RT.

## AUTHOR

Stevan Little \<stevan.little@iinteractive.com\>

## COPYRIGHT AND LICENSE

Copyright 2009-2010 Infinity Interactive, Inc.

\<http://www.iinteractive.com\>

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