
本文详解为何修改 php.ini 后 php 配置(如 upload_max_filesize)未生效,并提供精准定位加载配置文件、验证修改效果及避免常见误区的完整操作指南。
本文详解为何修改 php.ini 后 php 配置(如 upload_max_filesize)未生效,并提供精准定位加载配置文件、验证修改效果及避免常见误区的完整操作指南。
在部署 PrestaShop 或其他 PHP 应用时,常遇到修改 upload_max_filesize、post_max_size 或 max_execution_time 等参数后仍不生效的问题。你已尝试编辑 /etc/php/7.4/fpm/php.ini 和 /etc/php/7.4/cli/php.ini,并重启了 php7.4-fpm 和 Web 服务(如 Nginx/Apache),却依然看到默认的 2M 上传限制——这通常并非配置遗漏,而是修改了错误的 php.ini 文件。
✅ 正确做法:以 phpinfo() 为准,定位真实生效的配置文件
PHP 实际加载的配置文件路径不由命令行或服务路径决定,而由运行时 SAPI(如 FPM、Apache 模块)动态确定。CLI(php --ini)和 FPM 使用的 ini 文件往往不同,且 FPM 还可能通过 pool.d/*.conf 中的 php_admin_value 覆盖全局设置。
请按以下步骤精准定位:
-
创建临时诊断脚本(例如 /var/www/html/info.php):
<?php phpinfo(); ?>
- 通过浏览器访问该脚本(如 https://yoursite.com/info.php),查找页面中 "Loaded Configuration File" 这一行(位于 "Core" 部分顶部),它明确显示当前 Web 请求实际加载的 php.ini 路径(例如 /etc/php/7.4/fpm/php.ini 或 /etc/php/7.4/fpm/conf.d/10-pdo.ini 等)。
⚠️ 注意:
立即学习“PHP免费学习笔记(深入)”;
- 若该字段显示为 none,说明 PHP 正在使用默认内置配置,需确保 ini 文件路径正确且权限可读(644,属主为 root:root,Web 进程可读);
- 若显示的是 Scan this dir for additional .ini files 下的某个 .ini 文件(如 /etc/php/7.4/fpm/conf.d/20-upload.ini),则应直接修改该文件——PrestaShop 等应用常通过此方式覆盖核心参数。
✅ 修改与验证流程(以提升上传限制为例)
假设 phpinfo() 显示 Loaded Configuration File 为 /etc/php/7.4/fpm/php.ini,请编辑该文件:
; 修改上传相关参数(注意单位:M 表示 MB) upload_max_filesize = 16M post_max_size = 20M ; 必须 ≥ upload_max_filesize max_execution_time = 300 memory_limit = 256M
保存后,重启 PHP-FPM 服务(非仅 reload):
sudo systemctl restart php7.4-fpm # 若使用 Nginx,再重启 Nginx(Apache 同理) sudo systemctl restart nginx
最后,再次访问 info.php 页面刷新验证:搜索 upload_max_filesize,确认其值已更新;同时检查 "Local Value" 与 "Master Value" 是否一致——若不一致,说明存在运行时覆盖(如 PrestaShop 后台“性能 → 高级参数”中设置了 ini_set(),需同步调整或禁用)。
? 关键提醒
- ❌ 不要依赖 php --ini 或 CLI 配置:Web 环境由 PHP-FPM/Apache 模块加载,与 CLI 完全独立;
- ✅ 修改后务必重启 php-fpm 服务(systemctl restart php7.4-fpm),reload 可能不生效;
- ✅ PrestaShop 后台设置(如“高级参数 → 性能”中的“上传文件大小限制”)会调用 ini_set(),优先级高于 php.ini,若启用则需在此处同步修改;
- ✅ 检查 Nginx 配置中是否有 client_max_body_size(如 client_max_body_size 20M;),该值也必须 ≥ post_max_size,否则请求会在 Web 服务器层被拒绝。
遵循以上步骤,即可彻底解决 PHP 参数不生效问题,确保 PrestaShop 等应用的上传功能按预期工作。



















