Query: catalyst::engine::psgi
OS: debian
Section: 3pm
Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar
Catalyst::Engine::PSGI(3pm) User Contributed Perl Documentation Catalyst::Engine::PSGI(3pm)NAMECatalyst::Engine::PSGI - PSGI engine for CatalystSYNOPSIS# app.psgi use strict; use MyApp; MyApp->setup_engine('PSGI'); my $app = sub { MyApp->run(@_) };DESCRIPTIONCatalyst::Engine::PSGI is a Catalyst Engine that adapts Catalyst into the PSGI gateway protocol.COMPATIBILITYo Currently this engine works with Catalyst 5.8 (Catamoose) or newer. o Your application is supposed to work with any PSGI servers without any code modifications, but if your application uses "$c->res->write" to do streaming write, this engine will buffer the output until your app finishes. To do real streaming with this engine, you should implement an IO::Handle-like object that responds to "getline" method that returns chunk or undef when done, and set that object to "$c->res->body". Alternatively, it is possible to set the body to a code reference, which will be used to stream content as documented in the PSGI spec. o When your application runs behind the frontend proxy like nginx or lighttpd, this Catalyst engine doesn't automatically recognize the incoming headers like "X-Forwarded-For", because respecting these headers by default causes a potential security issue. You have to enable Plack::Middleware::ReverseProxy or Plack::Middleware::ForwardedHeaders to automatically promote those forwarded headers into "REMOTE_ADDR" hence IP address of the request. ReverseProxy middleware is pretty simple and has no configuration while ForwardedHeaders allows you to configure which upstream host to trust, etc.AUTHORTatsuhiko Miyagawa <miyagawa@bulknews.net> Most of the code is taken and modified from Catalyst::Engine::CGI.LICENSEThis library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.SEE ALSOCatalyst::Engine PSGI Plack perl v5.12.3 2011-06-11 Catalyst::Engine::PSGI(3pm)