Plack (software)
Appearance
Original author(s) | Tatsuhiko Miyagawa |
---|---|
Developer(s) | Tatsuhiko Miyagawa, Tokuhiro Matsuno, Jesse Luehrs, Tomas Doran, Graham Knop and others. |
Written in | Perl |
License | Perl License (Artistic License v2 + GNU General Public License v1) |
Website | plackperl.org |
![](http://upload.wikimedia.org/wikipedia/commons/thumb/5/58/Mod_perl_plack.png/220px-Mod_perl_plack.png)
Plack is a Perl web application programming framework inspired by Rack for Ruby and WSGI for Python,[1] and it is the project behind the PSGI specification used by other frameworks such as Catalyst and Dancer.
Plackup is a command line utility to run PSGI applications from the command line.[2]
Supported backends
As of March 2010[update][3] Plack supports the following server backends:
- CGI
- SCGI
- FastCGI
- mod_perl under Apache 1.3 and 2.0
- Standalone HTTP server included in Plack
- HTTP::Server::Simple
- Corona
- Starman
- Twiggy
- AnyEvent::HTTPD
- AnyEvent::ReverseHTTP
Examples
Using the default standalone HTTP server:
$ plackup app.psgi HTTP::Server::PSGI: Accepting connections at http://0:5000/
Running as a FastCGI daemon listening on a Unix socket, ready to be used by any Web server with FastCGI support:
$ plackup -s FCGI—listen /tmp/fcgi.sock app.psgi FastCGI: manager (pid 3336): initialized FastCGI: manager (pid 3336): server (pid 3337) started FastCGI: server (pid 3337): initialized
A working Hello world application run as a one-liner:
$ plackup -e 'sub { [200, ["Content-Type" => "text/plain"], ["Hello, world!"]] }
'
HTTP::Server::PSGI: Accepting connections at http://0:5000/
The command above starts an HTTP server listening on port 5000 of every local interface (IP address) and returns this 200 OK response to every HTTP request:
HTTP/1.0 200 OK
Date: Fri, 19 Mar 2010 23:34:10 GMT
Server: HTTP::Server::PSGI
Content-Type: text/plain
Content-Length: 13
Hello, world!
References
- ^ http://plackperl.org
- ^ "plackup - search.cpan.org". search.cpan.org. Retrieved 2016-02-20.
- ^ Plack::Handler modules on CPAN
External links