Mojolicious::Plugin::Mount - Application mount plugin
# Mojolicious
my $route = $app->plugin(Mount => {'/prefix' => '/home/sri/foo/script/foo'});
# Mojolicious::Lite
my $route = plugin Mount => {'/prefix' => '/home/sri/myapp.pl'};
# Adjust the generated route and mounted application
my $example = plugin Mount => {'/example' => '/home/sri/example.pl'};
$example->to(message => 'It works great!');
my $app = $example->pattern->defaults->{app};
$app->config(foo => 'bar');
$app->log(app->log);
# Mount application with host
plugin Mount => {'example.com' => '/home/sri/myapp.pl'};
# Host and path
plugin Mount => {'example.com/myapp' => '/home/sri/myapp.pl'};
# Or even hosts with wildcard subdomains
plugin Mount => {'*.example.com/myapp' => '/home/sri/myapp.pl'};
the Mojolicious::Plugin::Mount manpage is a plugin that allows you to mount whole Mojolicious applications.
The code of this plugin is a good example for learning to build new plugins, you're welcome to fork it.
See PLUGINS in the Mojolicious::Plugins manpage for a list of plugins that are available by default.
the Mojolicious::Plugin::Mount manpage inherits all methods from the Mojolicious::Plugin manpage and implements the following new ones.
my $route = $plugin->register(Mojolicious->new, {'/foo' => '/some/app.pl'});
Mount Mojolicious application and return the generated route, which is usually a the Mojolicious::Routes::Route manpage
object.
Mojolicious, the Mojolicious::Guides manpage, https://mojolicious.org.
|