如何将大文件分成块并将其上传到服务器?
我尝试了简单的move_uploaded_file()
功能,但它只上传了 2 MB 大小。
使用此方法增加上传最大文件大小限制:
方法#1:编辑php.ini
编辑您的 php.ini 文件(通常存储在 /etc/php.ini 或 /etc/php.d/cgi/php.ini 或 /usr/local/etc/php.ini 中):
# vi /etc/php.ini
示例输出:
memory_limit = 32M
upload_max_filesize = 10M
post_max_size = 20M
保存并关闭文件。重启 apache 或 lighttpd 网络服务器:
方法#2:编辑 .htaccess
编辑根目录中的 .htaccess 文件。当您无权访问 php.ini 文件时,这很有用。在本例中,/home/httpd/html 被视为根目录(您也可以在本地创建 .htaccess 文件,然后使用 ftp / sftp / scp 客户端上传):
# vi /home/httpd/html/.htaccess
追加/修改设置如下:
php_value upload_max_filesize 10M
php_value post_max_size 20M
php_value memory_limit 32M
保存并关闭文件。
方法 #3:编辑 PHP 文件
ini_set('upload_max_filesize', '10M');
ini_set('post_max_size', '10M');
ini_set('max_input_time', 300);
ini_set('max_execution_time', 300);
在此之后,您可以 ckeck :
<?php
phpinfo();
?>
检查这个块上传 plupload
尝试将此代码放在代码的顶部
ini_set('upload_max_filesize', '10M');
ini_set('post_max_size', '10M');
ini_set('max_input_time', 300);
ini_set('max_execution_time', 300);
您实际上可以更新您的 php ini 以允许上传更大的文件
Maximum allowed size for uploaded files.
upload_max_filesize = 100M;
Must be greater than or equal to upload_max_filesize
post_max_size = 100M;
但是如果你仍然需要上传大文件并且分块是强制性的,那么有很多 javascript 实现,其中之一: