如何在Perl和FCGI中设置POST_MAX限制

如何在Perl和FCGI中设置POST_MAX限制,perl,cgi,fastcgi,Perl,Cgi,Fastcgi,我正在研究如何在Perl和FCGI中设置POST_MAX。我正在使用perl模块CGI::Fast 我发现的大多数示例都与CGI有关,我认为它的工作方式不同,例如: use strict; use CGI; use Fcntl qw( :DEFAULT :flock ); use constant UPLOAD_DIR => "/usr/local/apache/data/uploads"; use constant BUFFER_SIZE => 16_384; us

我正在研究如何在Perl和FCGI中设置POST_MAX。我正在使用perl模块CGI::Fast

我发现的大多数示例都与CGI有关,我认为它的工作方式不同,例如:

use strict;
use CGI;
use Fcntl qw( :DEFAULT :flock );

use constant UPLOAD_DIR     => "/usr/local/apache/data/uploads";
use constant BUFFER_SIZE    => 16_384;
use constant MAX_FILE_SIZE  => 1_048_576;       # Limit each upload to 1 MB
use constant MAX_DIR_SIZE   => 100 * 1_048_576; # Limit total uploads to 100 MB
use constant MAX_OPEN_TRIES => 100;

$CGI::DISABLE_UPLOADS   = 0;
$CGI::POST_MAX          = MAX_FILE_SIZE;

my $q = new CGI; 
“提前感谢”

是由创建的CGI对象的子类

因此,您可以使用CGI中的功能,即:

$CGI::POST_MAX

如果设置为非负整数,则此变量会对过账的大小设置上限(以字节为单位)。如果CGI.pm检测到一个大于上限的帖子,它将立即退出并显示一条错误消息。此值将影响普通帖子和多部分帖子,这意味着它还限制了文件上载的最大大小。您应该将其设置为一个合理的高值,例如1兆字节

$CGI::禁用上传

如果设置为非零值,则将完全禁用文件上载。其他填写表单值将照常工作