Plack::App::PSGIBin(3) Run .psgi files from a directory


use Plack::App::PSGIBin;
use Plack::Builder;
my $app = Plack::App::PSGIBin->new(root => "/path/to/psgi/scripts")->to_app;
builder {
mount "/psgi" => $app;
# Or from the command line
plackup -MPlack::App::PSGIBin -e 'Plack::App::PSGIBin->new(root => "/path/psgi/scripts")->to_app'


This application loads .psgi files (or actually whichever filename extensions) from the root directory and run it as a PSGI application. Suppose you have a directory containing "foo.psgi" and "bar.psgi", map this application to "/app" with Plack::App::URLMap and you can access them via the URL:

to load them. You can rename the file to the one without ".psgi" extension to make the URL look nicer, or use the URL rewriting tools like Plack::Middleware::Rewrite to do the same thing.


Tatsuhiko Miyagawa