В своем коде на основе Codeigniter я принял следующие меры:
MultiPHP INI Editor в Cpanel
asp_tags = Off
display_errors = Off
max_execution_time = 300
max_input_time = 600
max_input_vars = 1000
memory_limit = 512M
post_max_size = 128M
session.gc_maxlifetime = 1440
session.save_path = "/var/cpanel/php/sessions/ea-php56"
upload_max_filesize = 128M
zlib.output_compression = Off
.htaccess в домашнем каталоге
<IfModule php5_module>
php_flag asp_tags Off
php_flag display_errors Off
php_value max_execution_time 20000
php_value max_input_time 20000
php_value max_input_vars 1000
php_value memory_limit 2G
php_value post_max_size 2G
php_value session.gc_maxlifetime 20000
php_value session.save_path "/var/cpanel/php/sessions/ea-php56"
php_value upload_max_filesize 2G
php_flag zlib.output_compression Off
</IfModule>
<IfModule lsapi_module>
php_flag asp_tags Off
php_flag display_errors Off
php_value max_execution_time 20000
php_value max_input_time 20000
php_value max_input_vars 1000
php_value memory_limit 2G
php_value post_max_size 2G
php_value session.gc_maxlifetime 20000
php_value session.save_path "/var/cpanel/php/sessions/ea-php56"
php_value upload_max_filesize 2G
php_flag zlib.output_compression Off
</IfModule>
Первые строки в контроллере и модели:
ini_set('post_max_size', '64M');
ini_set('upload_max_filesize', '64M');
ini_set("pcre.backtrack_limit", "100000000");
ini_set("max_allowed_packet ", "2G");
ini_set("max_execution_time ", "20000");
ini_set('max_input_time','20000');
ini_set('memory_limit', '2G');
set_time_limit(0);
$ config до загрузки файла
$config=array(
'upload_path'=>$_SERVER['DOCUMENT_ROOT']."/assets/uploads/rpt/",
'allowed_types'=>"rpt",
'overwrite' => TRUE,
'max_size' => '100000000',
'file_name' =>$filename
);
$this->load->library('upload', $config);
$this->upload->initialize($config);
if($this->upload->do_upload('rpt1'))
{
// do something
}
else
{
return "<div class='alert alert-danger'>".$this->upload->display_errors()."</div>";
}
Тем не менее я получаю следующее сообщение о загрузке файла размером более 2 МБ:
Загруженный файл превышает максимально допустимый размер в вашем файле конфигурации PHP.
Какое еще решение?