php.ini文件中上传选项设置_php允许大文件上传配置方法

发布时间:2019-12-18编辑:脚本学堂
本文介绍了php允许大文件上传的配置方法,PHP.INI文件中上传选项设置技巧,默认upload_max_filesize = 2M,即文件上传的大小为2M,要上传超过8M的文件,必须设定upload_max_filesize为需要的值。

怎么通过修改与设置php.ini文件实现大文件上传

php文件上传功能配置主要涉及php.ini配置文件中的 upload_tmp_dir、upload_max_filesize、post_max_size等选项。

第一部分,php.ini中文件上传功能配置选项 php大文件上传设置方法

打开php.ini配置文件找到File Uploads

file_uploads = On
默认允许HTTP文件上传,此选项不能设置为OFF。

upload_tmp_dir =
默认为空,此选项在手动配置PHP运行环境时,也容易遗忘,如果不配置这个选项,文件上传功能就无法实现,这个选项设置的是文件上传时存放文件 的临时目录,你必须给这个选项赋值,比如upload_tmp_dir =’/leapsoulcn’,代表在C盘目录下有一个leapsoulcn目录,和session配置一样,如果你是在linux环境下,你必须赋予这 个目录可写权限。

第二部分,如何上传超过8M的大文件?php上传大文件问题解析 

上传大文件主要涉及配置upload_max_filesize和post_max_size两个选项。

php.ini配置文件中的默认文件上传大小为2M,php初学者容易犯的一个错误是在编写文件上传功能时通过设置上传文件最大大小的表单区 域,即允许上传文件的最大值,max_file_size(隐藏值域)的值来规定上传文件的大小,不过这个值可以被绕过,安全起见,最好是在 php.ini配置文件中配置upload_max_filesize选项,设定文件上传的大小。

默认upload_max_filesize = 2M,即文件上传的大小为2M,如果上传超过8M的文件,比如20M,要设定upload_max_filesize = 20M。

仅设置upload_max_filesize = 20,不能实现大文件的上传功能,还需要修改php.ini配置文件中的post_max_size选项,其代表允许POST的数据最大字节长度,默 认为8M。如果POST数据超出限制,那么$_POST和$_FILES将会为空。

要上传大文件,必须设定该选项值大于 upload_max_filesize指令的值,一般设定upload_max_filesize和post_max_size值相等。
另外,如果启用了内存限制,那么该值应当小于memory_limit选项的值。

第三部分,文件上传注意事项

在上传大文件时,上传速度很慢,当超过一定的时间,会报脚本执行超过30秒的错误,原因是php.ini配置文件中 max_execution_time配置选项在作怪,其表示每个脚本最大允许执行时间(秒),0 表示没有限制。

可以适当调整max_execution_time的值,不推荐设定为0。

至此,在php.ini配置文件中对文件上传选项进行配置的php教程就介绍完了,希望对大家有所帮助。