Changes for version 0.9028 - 2010-01-05
- Fixed a long standing bug where errors are not printed correctly when the application dies. (tokuhirom)
- Fixed FCGIClient passing bogus psgi.* environment values to the backend
- Implemented psgi.streaming in all blocking servers (miyagawa, rafl)
Documentation
Run PSGI application with Plack servers
Modules
Converts HTTP::Request and HTTP::Response from/to PSGI env and response
PSGI toolkit and servers
cgi-bin replacement for Plack servers
Cascadable compound application
Serve static files from document root with directory index
Dispatch requests to FCGI servers
Serve static files from root directory
Run .psgi files from a directory
Map multiple apps in different paths
OO and DSL to enable Plack Middlewares
Base class for PSGI endpoints
Parse HTTP headers
Pure perl fallback of HTTP::Parser::XS
(auto)load Plack Servers
MIME type registry
Base class for easy-to-use PSGI middleware
Logs requests like Apache's log format
Logs requests with time and accurate body size
Simple basic authentication middleware
Applies chunked encoding to the response body
Conditional wrapper for Plack middleware
Middleware to add "conditional", GET
Adds Content-Length header automatically
Automatically sets the Content-MD5 header on all String bodies
Set Error Document based on HTTP status code
Wraps JSON response in JSONP if callback parameter is specified
Validate request and response
Overrides HTTP method with X-HTTP-Method-Override header
Reorder HTTP headers for buggy clients
Sets an X-Runtime response header
Filters response content
Displays stack trace when your app dies
serve static files with Plack
Sample middleware to add X-Framework
Sets X-Sendfile (or a like) header for frontends
plackup core
Standard interface for Plack implementations
Apache 1.3.x handlers to run PSGI application
Apache 2.0 handlers to run PSGI application
single process standalone HTTP server
Prefork standalone HTTP server
Test PSGI applications with various backends
Run mocked HTTP tests through PSGI applications
Run HTTP tests through live Plack servers
Utility subroutines for Plack server and framework developers
Accessor generation utility for Plack
Provides
in lib/Plack/Test/Suite.pm
in lib/Plack/Loader/Reloadable.pm
in lib/Plack/Middleware/Writer.pm
in lib/Plack/Server/CGI.pm
in lib/Plack/Server/CGI.pm
in lib/Plack/Server/FCGI.pm
in lib/Plack/Test/Suite.pm
in lib/Plack/Util.pm
in lib/Plack/Util.pm
Examples
- eg/dot-psgi/Dumper.psgi
- eg/dot-psgi/Hello.psgi
- eg/dot-psgi/cgi-pm.psgi
- eg/dot-psgi/cgi-script.psgi
- eg/dot-psgi/echo-stream-sync.psgi
- eg/dot-psgi/echo-stream.psgi
- eg/dot-psgi/echo.psgi
- eg/dot-psgi/error.psgi
- eg/dot-psgi/frameworks/Angelos.psgi
- eg/dot-psgi/frameworks/Ark.psgi
- eg/dot-psgi/frameworks/CGI-Application.psgi
- eg/dot-psgi/frameworks/Catalyst.psgi
- eg/dot-psgi/frameworks/HTML-Mason.psgi
- eg/dot-psgi/frameworks/HTTP-Engine.psgi
- eg/dot-psgi/frameworks/Maypole.psgi
- eg/dot-psgi/frameworks/Mojo.psgi
- eg/dot-psgi/frameworks/Schenker.psgi
- eg/dot-psgi/frameworks/Squatting.psgi
- eg/dot-psgi/image.psgi
- eg/dot-psgi/plack-req.psgi
- eg/dot-psgi/runnable.psgi
- eg/dot-psgi/slowapp.psgi
- eg/dot-psgi/static.psgi
- eg/dot-psgi/static/index.html
- eg/dot-psgi/static/test.css
- eg/dot-psgi/static/test.js
- eg/dot-psgi/twitter-stream.psgi