You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel 5.4文件上传报错:POST内容长度超限,修改php.ini仍无效

解决Laravel 5.4上传文件时POST Content-Length超出限制的问题

嘿,我之前也踩过这个一模一样的坑!明明改了php.ini还重启了WAMP,结果错误提示纹丝不动?别慌,大概率是你没找对要修改的php.ini文件,或者重启方式不对。下面是一步步排查解决的方法:

  • 先确认你改对了php.ini文件
    WAMP环境下通常会有多个php.ini副本,比如PHP安装目录下的、Apache目录下的,而真正生效的只有一个。最快的确认方法是:在你的Laravel项目里新建一个php文件,内容写<?php phpinfo(); ?>,然后在浏览器访问这个文件,找到Loaded Configuration File这一项,它显示的路径就是当前PHP正在使用的配置文件路径,你必须修改这个文件才有用!

  • 检查并修改三个关键配置项
    打开刚才找到的php.ini文件,找到以下三个配置,调整数值(这里以允许20M文件为例):

    • upload_max_filesize = 20M:单个上传文件的最大限制
    • post_max_size = 25M:POST请求的总数据量限制,必须比upload_max_filesize大,因为POST里除了文件还有其他表单数据
    • memory_limit = 32M:PHP脚本的内存限制,上传大文件时需要足够的内存处理
  • 彻底重启WAMP服务
    别只点Apache的重启!右键WAMP托盘图标,选择「Restart All Services」,或者干脆关掉WAMP再重新打开,确保配置文件的修改被加载。

  • 验证配置是否生效
    重启后再访问刚才的phpinfo页面,搜索upload_max_filesize、post_max_size这两个项,看看数值是不是已经变成你设置的大小了。如果还是旧值,说明你还是改错了文件,回到第一步重新确认路径。

另外补充一点:Laravel应用层也有文件大小验证规则,比如在表单请求类里的rules()方法中设置'file' => 'required|file|max:20480'(20480对应20M),不过这是应用层的限制,得先把PHP的配置问题解决了,这个才会生效。

内容的提问来源于stack exchange,提问作者Robgogo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 12:16:47