
MojoX::Dispatcher::Static - Serve Static Files

use MojoX::Dispatcher::Static;
my $dispatcher = MojoX::Dispatcher::Static->new(
prefix => '/images',
root => '/ftp/pub/images'
);
my $success = $dispatcher->dispatch($c);

MojoX::Dispatcher::Static is a dispatcher for static files.
prefix my $prefix = $dispatcher->prefix;
$dispatcher = $dispatcher->prefix('/static');
Returns the path prefix if called without arguments. Returns the invocant if called with arguments. If defined, files will only get served for url paths beginning with this prefix.
types my $types = $dispatcher->types;
$dispatcher = $dispatcher->types(MojoX::Types->new);
Returns a Mojo::Types object if called without arguments. Returns the invocant if called with arguments. If no type can be determined, text/plain will be used.
root my $root = $dispatcher->root;
$dispatcher = $dispatcher->root('/foo/bar/files');
Returns the root directory from which files get served if called without arguments. Returns the invocant if called with arguments.

MojoX::Dispatcher::Static inherits all methods from Mojo::Base and implements the follwing the ones.
dispatchmy $success = $dispatcher->dispatch($c);
Returns true if a file matching the request could be found and a response be prepared. Returns false otherwise. Expects a MojoX::Context object as first argument.
servemy $success = $dispatcher->serve($c, 'foo/bar.html');
Returns true if a readable file could be found under root and a response be prepared. Returns false otherwise. Expects a MojoX::Context object and a path as arguments. If no type can be determined, text/plain will be used. A Last-Modified header will always be set according to the last modified time of the file.
serve_404 my $success = $dispatcher->serve_404($c);
my $success = $dispatcher->serve_404($c, '404.html');
serve_500 my $success = $dispatcher->serve_500($c);
my $success = $dispatcher->serve_500($c, '500.html');
serve_error my $success = $dispatcher->serve_error($c, 404);
my $success = $dispatcher->serve_error($c, 404, '404.html');