【荐】PHP上传文件大小限制大全
2015-11-28 23:24
375 查看
在php.ini里面可以设置最大上传文件大小
解决方法:
第一:
在php.ini里面查看如下行:
另外要确认上传的 <form> 里类似下面的这行
第二:
如果是apache 2 需要修改
中的LimitRequestBody 524288将524288(=512×1024)改大,比如5M(=5×1024×1024)
另外:PHP的最大执行时间也是可能影响的因素。
也可通过php文件临时设置,代码如下:
打开php.ini,首先找到
;;;;;;;;;;;;;;;;
; File Uploads ;
;;;;;;;;;;;;;;;;
区域,有影响文件上传的以下几个参数:
file_uploads = on ;是否允许通过HTTP上传文件的开关。默认为ON即是开
upload_tmp_dir ;文件上传至服务器上存储临时文件的地方,如果没指定就会用系统默认的临时文件夹
upload_max_filesize = 200m ;望文生意,即允许上传文件大小的最大值。默认为2M
在
;;;;;;;;;;;;;;;;;
; Data Handling ;
;;;;;;;;;;;;;;;;;
区域,还有一项:
post_max_size = 100m ;指通过表单POST给PHP的所能接收的最大值,包括表单里的所有值。默认为8M
一般地,设置好上述四个参数后,上传<=8M的文件是不成问题,在网络正常的情况下。
但如果要上传>8M的大体积文件,只设置上述四项还一定能行的通。除非你的网络真有100M/S的上传高速,否则你还得关心关心下面的参数:
;;;;;;;;;;;;;;;;;;;
; Resource Limits ;
;;;;;;;;;;;;;;;;;;;
max_execution_time = 600 ;每个PHP页面运行的最大时间值(秒),默认30秒
max_input_time = 600 ;每个PHP页面接收数据所需的最大时间,默认60秒
memory_limit = 8m ;每个PHP页面所吃掉的最大内存,默认8M
把上述参数修改后,在网络所允许的正常情况下,就可以上传大体积文件了。
好了,设置好现在就可以一试。点击一200大M的文件上传一下
在你听歌、想MM或上厕所回来过程中,程序会告诉你上传成功啦~
在本机上测试上传200M的文件成功。
工作中的一次配置:
补充说明:需要保持 memory_limit > post_max_size > upload_max_filesize
解决方法:
第一:
在php.ini里面查看如下行:
upload_max_filesize = 8M post_max_size = 10M memory_limit = 20M
另外要确认上传的 <form> 里类似下面的这行
<input type="hidden" name="MAX_FILE_SIZE" value="500000">
第二:
如果是apache 2 需要修改
/etc/httpd/conf.d/php.conf
中的LimitRequestBody 524288将524288(=512×1024)改大,比如5M(=5×1024×1024)
另外:PHP的最大执行时间也是可能影响的因素。
也可通过php文件临时设置,代码如下:
<?php ini_set('max_execution_time', '600'); ini_set('post_max_size ', '100M'); // 好像设置不成功,不起作用 ini_set('upload_max_filesize', '200M'); // 好像设置不成功,不起作用 ?>
打开php.ini,首先找到
;;;;;;;;;;;;;;;;
; File Uploads ;
;;;;;;;;;;;;;;;;
区域,有影响文件上传的以下几个参数:
file_uploads = on ;是否允许通过HTTP上传文件的开关。默认为ON即是开
upload_tmp_dir ;文件上传至服务器上存储临时文件的地方,如果没指定就会用系统默认的临时文件夹
upload_max_filesize = 200m ;望文生意,即允许上传文件大小的最大值。默认为2M
在
;;;;;;;;;;;;;;;;;
; Data Handling ;
;;;;;;;;;;;;;;;;;
区域,还有一项:
post_max_size = 100m ;指通过表单POST给PHP的所能接收的最大值,包括表单里的所有值。默认为8M
一般地,设置好上述四个参数后,上传<=8M的文件是不成问题,在网络正常的情况下。
但如果要上传>8M的大体积文件,只设置上述四项还一定能行的通。除非你的网络真有100M/S的上传高速,否则你还得关心关心下面的参数:
;;;;;;;;;;;;;;;;;;;
; Resource Limits ;
;;;;;;;;;;;;;;;;;;;
max_execution_time = 600 ;每个PHP页面运行的最大时间值(秒),默认30秒
max_input_time = 600 ;每个PHP页面接收数据所需的最大时间,默认60秒
memory_limit = 8m ;每个PHP页面所吃掉的最大内存,默认8M
把上述参数修改后,在网络所允许的正常情况下,就可以上传大体积文件了。
好了,设置好现在就可以一试。点击一200大M的文件上传一下
在你听歌、想MM或上厕所回来过程中,程序会告诉你上传成功啦~
在本机上测试上传200M的文件成功。
工作中的一次配置:
upload_max_filesize 300M post_max_size 350M memory_limit 400M max_execution_time 600 max_input_time 600
补充说明:需要保持 memory_limit > post_max_size > upload_max_filesize
相关文章推荐
- PHP上传(单个)文件示例
- PHP同时上传“多个”文件示例,并格式化$_FILES数组信息
- PHP中file_exists与is_file、is_dir的区别,以及执行效率的比较
- PHP下载保存文件
- PHP不使用?>结尾会更好!
- PHP函数 mysql_real_escape_string 与 addslashes 的区别
- srtp项目的看法
- php数据库操作封装类
- PHP格式化字符串函数 sprintf()
- PHP中PDO错误/异常(PDOException)处理
- 如何使用PDO查询Mysql来避免SQL注入风险?ThinkPHP 3.1中的SQL注入漏洞分析!
- ContentProvider示例-Calendar Provider
- phpmailer 发邮件(转载+参数提示)
- ssh scp sftp (密钥对)
- PHP一种友好的函数传参模式设计
- php实现木桶排序
- uboot 中nand write 与nand write.yaffs的区别
- FFmpeg发送流媒体的命令(UDP,RTP,RTMP)
- thinkphp 3.2 实现登录功能+验证码
- php 批量生成html、txt文件