Plack::App::File - Serve static files from root directory
use Plack::App::File;
my $app = Plack::App::File->new(root => "/path/to/htdocs")->to_app;
# Or map the path to a specific file
use Plack::Builder;
builder {
mount "/favicon.ico" => Plack::App::File->new(file => '/path/to/favicon.ico')->to_app;
};
This is a static file server PSGI application, and internally used by
Plack::Middleware::Static. This application serves file from document root if
the path matches with the local file. Use Plack::App::Directory if you want to
list files in the directory as well.
- root
- Document root directory. Defaults to "."
(current directory)
- file
- The file path to create responses from. Optional.
If it's set the application would ALWAYS create a
response out of the file and there will be no security check etc. (hence
fast). If it's not set, the application uses
"root" to find the matching file.
- encoding
- Set the file encoding for text files. Defaults to
"utf-8".
- content_type
- Set the file content type. If not set Plack::MIME will try to detect it
based on the file extension or fall back to
"text/plain". Can be set to a callback
which should work on $_[0] to check full path file
name.
Plack::Middleware::Static Plack::App::Directory