【荐】PHP上传文件大小限制大全

本文详细介绍了如何在php.ini中调整PHP上传文件大小限制,包括设置upload_max_filesize、post_max_size、memory_limit和max_execution_time等参数,并提供了一个实际的配置案例,帮助开发者解决大文件上传问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【荐】PHP上传文件大小限制大全    

作者:SNSGOU 发布于:2012-05-11 23:41:45  分类:PHP   浏览(1891) 

在php.ini里面可以设置最大上传文件大小

解决方法:

第一:

在php.ini里面查看如下行:

1

upload_max_filesize = 8M

2

post_max_size = 10M

3

memory_limit = 20M

另外要确认上传的 <form> 里类似下面的这行

1

<input type="hidden" name="MAX_FILE_SIZE" value="500000">

第二:

如果是apache 2 需要修改

1

/etc/httpd/conf.d/php.conf

中的LimitRequestBody 524288将524288(=512×1024)改大,比如5M(=5×1024×1024)

 

另外:PHP的最大执行时间也是可能影响的因素。

也可通过php文件临时设置,代码如下:

1

<?php

2

    ini_set('max_execution_time', '600');

3

    ini_set('post_max_size ', '100M');  // 好像设置不成功,不起作用

4

    ini_set('upload_max_filesize', '200M'); // 好像设置不成功,不起作用

5

?>

 

 

打开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的文件成功。

 

 

工作中的一次配置:

1

upload_max_filesize     300M

2

post_max_size           350M

3

memory_limit            400M

4

max_execution_time      600

5

max_input_time          600

补充说明:需要保持 memory_limit > post_max_size > upload_max_filesize

 

 

 

延伸阅读:

配置php.ini实现PHP文件上传功能

PHP上传文件示例


转载于:https://my.oschina.net/yonghan/blog/506601

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值