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

Godaddy部署Laravel应用上传图片遇Request Entity Too Large问题求助

解决GoDaddy上Laravel多图上传“Request Entity Too Large”问题

我之前在GoDaddy共享主机部署Laravel项目时,也碰到过完全一样的问题——小图上传正常,1MB的图就报错,折腾了好一阵才搞定,给你分享几个靠谱的排查方向:

  • 检查ini文件的放置位置:GoDaddy的共享主机对php.ini/user.ini的位置有要求,不是所有情况都放在public_html里就行。你可以试试把这两个文件移到public_html的上级目录(也就是存放public_html的那个主文件夹),然后等5-10分钟让服务器生效,或者去GoDaddy主机后台找到“重启PHP”的选项手动重启。

  • 验证PHP配置是否生效:在Laravel的public目录里新建一个phpinfo.php文件,内容如下:

    <?php phpinfo(); ?>
    

    访问这个文件,搜索upload_max_filesize、post_max_size这些参数,看看是不是你设置的256M/257M。如果还是默认的小数值,说明你的ini文件没被服务器读取到,就得换配置方式了。

  • 改用.htaccess配置:如果ini文件不管用,试试在Laravel项目的public/.htaccess文件里添加这些Apache指令(如果public_html里的.htaccess是Laravel生成的,直接加在合适位置就行):

    php_value upload_max_filesize 256M
    php_value post_max_size 257M
    php_value max_input_time 300
    php_value max_execution_time 300
    php_value max_file_uploads 20
    

    很多GoDaddy主机对.htaccess的PHP参数支持更好,这个方法我亲测有效。

  • 检查Laravel自身的验证规则:别漏了框架层面的限制!如果你在表单请求或者控制器里给图片字段加了max:1024(代表1MB)的验证规则,哪怕服务器允许更大的上传,Laravel也会拦截。记得把验证规则改成对应256MB的数值(单位是KB,256*1024=262144),比如:

    // 示例:控制器里的验证逻辑
    $request->validate([
        'images' => 'required|array|max:20',
        'images.*' => 'image|mimes:jpeg,png,jpg,gif|max:262144',
    ]);
    
  • 查看GoDaddy后台的PHP可视化配置:有些GoDaddy主机在管理后台提供了PHP配置的可视化界面,你可以直接在后台调整上传大小、执行时间这些参数,比自己手动放ini文件更稳妥。找到“PHP版本”或者“PHP配置”的选项进去看看。

我当时就是把ini文件移到上级目录,再配合.htaccess的配置,就解决了问题。你可以一个个试,应该能搞定!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 09:26:56