私は壁にぶつかって、私のGoogleのスキルは私に失敗しました。私は頻繁に使用する一連のPerlスクリプトのために便利なフロントエンドを作成するためにmojoliciousを学んでいます。私はそれを通って長い道のりがあるが、ファイルの総数が950に達すると、(複数の)ファイルのアップロードに困惑している。多数のファイルでmojoliciousが複数のファイルをアップロードすると失敗する
以前は、複数のファイルのアップロードでファイルが始まるファイルサイズが16MBに達すると、アップロードは停止しました。 $ ENV {MOJO_MAX_MESSAGE_SIZE} = 50000000000と設定してこれを修正しました。ただし、この問題は異なります。例として、アップロードされたファイルを取得しようとしているスクリプトの一部です:
my $files = $self->req->every_upload('localfiles');
for my $file (@{$files}) {
my $fileName = $file->filename =~ s/[^\w\d\.]+/_/gr;
$file->move_to("temporary_uploads/$fileName");
$self->app->log->debug("$fileName uploaded\n");
push @fileNames, $fileName;
};
say "FILES: ".scalar(@fileNames);
私は醜いかもしれないとお詫び申し上げます。 949個のファイルをアップロードしようとすると、配列@fileNamesは正しく設定されますが、950個のファイルをアップロードしようとすると配列が空になり、$ filesも空であるように見えます。誰かが私に解決策を導くためのアイデアや指針を持っていれば、私は非常に感謝しています!
Mojoliciousアプリをラップする別のサーバーはありますか?そのサーバーにはリクエストサイズの上限がありますが、これは変更することもできないこともあります。 [ここにnginxの例があります](https://www.cyberciti.biz/faq/linux-unix-bsd-nginx-413-request-entity-too-large/)。 – mob
4.99 GBのアップロードをいくつ処理できますか? –
@mobヒントありがとうございます - mojoはhypnotoadというサーバーを使用できますが、それが私の場合は他のインスタンスとして使用されているように初期化されているかどうかわかりませんが、特に宣言されているようです。私はこれを探るつもりです - ありがとう。 – user1597452