Perl 检查CGI上载中每个文件的长度,而不是整个请求的长度
我试图修改Uber Uploader perl脚本,以便在检查上传是否满足最低要求时,检查每个文件,而不仅仅是整个请求 我对perl不是很有经验,也不知道如何做到这一点。目前,该脚本仅执行以下操作:Perl 检查CGI上载中每个文件的长度,而不是整个请求的长度,perl,upload,cgi,Perl,Upload,Cgi,我试图修改Uber Uploader perl脚本,以便在检查上传是否满足最低要求时,检查每个文件,而不仅仅是整个请求 我对perl不是很有经验,也不知道如何做到这一点。目前,该脚本仅执行以下操作: elsif($ENV{'CONTENT_LENGTH'} > $config{'max_upload_size'}){ my $max_size = &format_bytes($config{'max_upload_size'}, 99); die("Maximum upload s
elsif($ENV{'CONTENT_LENGTH'} > $config{'max_upload_size'}){
my $max_size = &format_bytes($config{'max_upload_size'}, 99);
die("Maximum upload size of $max_size exceeded");
}
所做的只是检查请求的内容长度(包含多个文件),当总数大于允许的最大大小时失败
有没有办法检查每个文件
注意:更改上载脚本不是一个选项。不要尝试我不知道你说的“更改上传脚本不是一个选项”是什么意思,但是你试过类似的方法吗
my $q = CGI->new();
my @files = $q->upload();
foreach my $file (@files){
if ((-s $file) > $config{'max_upload_size'}){
die("Maximum upload size of $file exceeded");
}
}
(注意:这是未经测试的代码!!!!)我不确定您所说的“更改上载脚本不是一个选项”是什么意思,但您是否尝试过类似的方法
my $q = CGI->new();
my @files = $q->upload();
foreach my $file (@files){
if ((-s $file) > $config{'max_upload_size'}){
die("Maximum upload size of $file exceeded");
}
}
(注意:这是未经测试的代码!!!!!)