解决PHP上传文件时大小受限制问题

近几天,小幸用php帮别人开发一个web应用,其中需要简单用到上传,在上传时我发现当上传的文件过大时就会导致上传失败,甚至导致普通文本域都不能正常上传,遇到这个问题我就知道是php.ini在捣鬼了,因为环境会默认限制上传的大小,以防止恶意的行为导致服务器端不可承受。于是小幸打开php.ini查看了一番。发现如下几个跟上传相关的字段:

  1. file_uploads 是否允许通过HTTP上传文件的开关。默认为ON即是开
  2. upload_tmp_dir – 文件上传至服务器上存储临时文件的地方,如果没指定就会用系统默认的临时文件夹
  3. upload_max_filesize 允许上传文件大小的最大值。默认为2M
  4. post_max_size 通过表单POST给PHP的所能接收的最大值,包括表单里的所有值。默认为8M

于是,我们通过如下设置,就可以上传不超过2G的文件了:

file_uploads on
upload_max_filesize 2048M
post_max_size 2049M

请注意,修改php.ini文件后记得restart all server.
另外,可以通过count($_FILES)来判断是否正常上传了,若该值为0即表示上传的文件大小超过了设置的阈值而未成功上传,修改配置文件或者做相应提示即可。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Regent Wan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值