4
我已经看过 places找到从mojolicious应用程序内服务的静态文件的目录的最佳方式,这是尽可能接近我已经能够:服务静态目录从mojolicious以外/公共
package ExampleServer;
use Mojo::Base 'Mojolicious';
use Mojolicious::Static;
# This method will run once at server start
sub startup {
my $self = shift;
$ENV{MOJO_REVERSE_PROXY} = 1;
# TODO: generalize
my $static_path = '/www/example/docroot/.well-known/acme-challenge/';
# Router
my $r = $self->routes;
# Normal route to controller
$r->get('/')->to('example#welcome');
# serve static directory
$r->get('/.well-known/acme-challenge/*filename' => sub {
my $self = shift;
my $filename = $self->stash('filename');
my $fqfn = $static_path . $filename;
$self->app->log->debug($fqfn);
my $static = Mojolicious::Static->new(paths => [ $static_path ]);
$static->serve($self, $fqfn);
$self->rendered;
});
}
1;
这是正确拉出文件名,它仅影响URL的我也想,但不管他们是否在该目录中存在或不是供应空文件。我错过了什么?