Catalyst-Engine-PSGI

 view release on metacpan or  search on metacpan

README  view on Meta::CPAN


      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.

      * 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.

lib/Catalyst/Engine/PSGI.pm  view on Meta::CPAN

chunk or undef when done, and set that object to C<< $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
L<PSGI spec|PSGI/Delayed_Reponse_and_Streaming_Body>.

=item *

When your application runs behind the frontend proxy like nginx or
lighttpd, this Catalyst engine doesn't automatically recognize the
incoming headers like C<X-Forwarded-For>, because respecting these
headers by default causes a potential security issue.

You have to enable L<Plack::Middleware::ReverseProxy> or
L<Plack::Middleware::ForwardedHeaders> to automatically promote those
forwarded headers into C<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.



( run in 0.281 second using v1.01-cache-2.11-cpan-26ccb49234f )