登录
首页 >  文章 >  php教程

XAMPP修改PHP上传限制教程

时间:2026-05-21 16:27:49 380浏览 收藏

本文详解XAMPP环境下突破PHP上传限制的完整实操方案:从精准定位真正生效的php.ini文件(通过phpinfo()确认Loaded Configuration File路径,避免误改模板文件),到必须同步调整upload_max_filesize和post_max_size为相同值(如128M,单位M须大写)、理解二者逻辑关系及常见陷阱,再到强制重启Apache并双重验证修改结果;同时提醒用户注意PHP版本切换对配置路径的影响,并针对超大SQL文件导入失败问题,给出绕过phpMyAdmin、直接使用MySQL命令行导入的高效可靠替代方案——每一步都直击90%用户失败的核心原因,助你彻底告别上传被拒、配置无效、导入卡死等典型困境。

XAMPP修改PHP上传文件大小限制 XAMPP配置php.ini

改 php.ini 里的 upload_max_filesizepost_max_size 就能解决,但只改一个或没重启 Apache,90% 的人会失败。

怎么找到真正生效的 php.ini 文件

很多人改了文件却没效果,是因为改错了位置。XAMPP 可能加载的是另一个 php.ini,尤其当你用控制面板切换过 PHP 版本时。

  • 在浏览器打开 http://localhost/dashboard/phpinfo.php(或自己建个 info.php,内容为
  • 搜索 Loaded Configuration File 这一行,它显示的路径才是 Apache 正在用的那个 php.ini
  • 常见正确路径是 C:\xampp\php\php.ini,但 Windows 下可能被隐藏,建议用管理员权限的记事本打开
  • 别改 php.ini-developmentphp.ini-production —— 它们只是模板,不被 Apache 加载

必须同时改的两个参数及其关系

upload_max_filesize 控制单个文件上限,post_max_size 控制整个 POST 请求体大小(含所有文件 + 表单字段)。后者必须 ≥ 前者,否则上传直接被 PHP 拦截,且错误提示常不明确。

  • 推荐设为相同值,比如都改成 upload_max_filesize = 128Mpost_max_size = 128M
  • 单位必须写 M(大写),不能写 mbMB 或数字加空格,否则解析失败,PHP 会回退到默认值(通常是 2M)
  • 如果还要支持多文件并发上传,顺手检查下 max_file_uploads(默认 20),不够就调高

改完不生效?重启和验证缺一不可

修改保存后,仅重启 MySQL 或刷新页面完全无效。Apache 必须完整重启,且要确认服务确实起来了。

  • 在 XAMPP 控制面板中,先点 Stop Apache,等状态变成“Stopped”后再点 Start
  • 启动后访问 phpinfo() 页面,再次搜索 upload_max_filesizepost_max_size,确认数值已更新
  • 如果值还是旧的,说明你编辑的不是 Loaded Configuration File 所指的那个文件
  • Windows 下有时文件被系统占用或权限不足,可尝试复制一份新 php.ini 替换原文件(先备份)

超大 SQL 文件导入失败?别硬扛 phpMyAdmin

当 SQL 文件超过 100MB,即使调高了上传限制,phpMyAdmin 的 Web 界面仍可能因内存溢出、超时或前端限制卡住。这时命令行是唯一可靠路径。

  • 确保 MySQL 正在运行(XAMPP 面板里显示 “Running”)
  • 打开 CMD,进入 C:\xampp\mysql\bin 目录:cd C:\xampp\mysql\bin
  • 执行导入:mysql -u root -p mydb < C:\path\to\dump.sqlmydb 是目标库名)
  • 该方式完全绕过 PHP 和 Apache,不受 upload_max_filesize 限制,也更快更稳定

最容易被忽略的一点:XAMPP 控制面板右上角的 PHP 版本切换按钮,会悄悄改变 Loaded Configuration File 路径。每次切换后,都要重新确认并修改对应版本的 php.ini

今天关于《XAMPP修改PHP上传限制教程》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于XAMPP的内容请关注golang学习网公众号!

资料下载
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>