logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Mojolicious::Plugin::Mount - Application mount plugin

Description

       Mojolicious::Plugin::Mount 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 Mojolicious::Plugins for a list of plugins that are available by default.

Methods

       Mojolicious::Plugin::Mount inherits all methods from Mojolicious::Plugin and implements the following new
       ones.

   register
         my $route = $plugin->register(Mojolicious->new, {'/foo' => '/some/app.pl'});

       Mount Mojolicious application and return the generated route, which is usually a
       Mojolicious::Routes::Route object.

Name

       Mojolicious::Plugin::Mount - Application mount plugin

See Also

       Mojolicious, Mojolicious::Guides, <https://mojolicious.org>.

perl v5.40.0                                       2024-12-07                    Mojolicious::Plugin::Mount(3pm)

Synopsis

         # 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'};

See Also