私は Mojolicious を初めて使用し、このフレームワークを使用して小さな Web サービスを構築しようとしています。いくつかのファイルをリモートでレンダリングする以下のコードを書きました。
use Mojolicious::Lite;
use strict;
use warnings;
app->static->paths->[0]='C:\results';
get '/result' => sub {
my $self = shift;
my $headers = $self->res->headers;
$headers->content_type('text/zip;charset=UTF-8');
$self->render_static('result.zip');
};
app->start;
しかし、次のURLを使用してファイルを取得しようとすると、次のようになります:
http://mydomain:3000/result/./../result
ファイルを取得します。
そのようなディレクトリトラバーサルを防ぐためのモジョリシャスのオプションはありますか?
つまり、上記の場合、私は欲しいだけです
http:/mydomain:300/result
誰かがこの URL を入力した場合にページを提供する:
http://mydomain:3000/result/./../result
ページは提供されるべきではありません。これを行うことは可能ですか?