真实生效路径是“Loaded Configuration File”行所示路径;Web环境用phpinfo()查,CLI环境用php --ini查;若显示(none)则未加载任何php.ini,配置全用默认值。

直接看 Loaded Configuration File 这一行,才是 PHP 8.1 当前真正读取并生效的配置文件路径。别猜、别翻目录、别信“默认路径”,Linux 下不同安装方式、不同 SAPI(CLI/FPM/Apache)用的 php.ini 完全可能不在同一位置。
Web 环境(如 Nginx + PHP-FPM 或 Apache)必须用 phpinfo()
新建一个 info.php 文件,内容只有一行:
把它放到网站根目录(比如 /www/wwwroot/default 或 /var/www/html),用浏览器访问,例如 http://your-site.com/info.php。页面加载后,按 Ctrl+F 搜索 Loaded Configuration File,右侧显示的路径就是当前 Web 服务正在加载的 php.ini —— 对 PHP 8.1 来说,常见但不绝对的路径有:
-
/etc/php/8.1/fpm/php.ini(PHP-FPM 场景) -
/etc/php/8.1/apache2/php.ini(Apache mod_php) -
/www/server/php/81/etc/php.ini(宝塔面板,81 表示 PHP 8.1)
如果这一项显示为空或 (none),说明 Web 环境根本没加载任何 php.ini,所有配置走编译默认值,修改其他位置的文件不会生效。
立即学习“PHP免费学习笔记(深入)”;
命令行环境(CLI)用 php --ini
在终端执行:
Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。
重点看输出中 Loaded Configuration File 这一行。对 PHP 8.1 CLI,典型路径包括:
-
/etc/php/8.1/cli/php.ini(Ubuntu/Debian 官方包) -
/usr/local/lib/php.ini(源码编译常见路径) -
/opt/php-8.1/etc/php.ini(自定义安装)
注意:CLI 和 Web 的配置文件是分离的,改了 cli/php.ini 不会影响网页上传或内存限制,反之亦然。
验证路径是否存在且可读
找到路径后,别急着编辑,先确认文件真实存在且权限正确:
ls -l /etc/php/8.1/fpm/php.ini如果提示 No such file or directory,说明路径不对;如果提示 Permission denied,可能是权限不足,需加 sudo 查看或修改。同时检查文件名是否为 php.ini,而不是 php.ini-production 或 php.ini-development —— 后两者只是模板,不会被自动加载。
多版本共存时要交叉核对
如果你系统里装了多个 PHP 版本(比如 7.4、8.1、8.2),运行以下三行命令对比结果:
which phpphp -v
php --ini
若 which php 返回 /usr/bin/php,但 php --ini 显示的是 /etc/php/8.1/cli/php.ini,说明你用的是系统级软链,实际调用的是 PHP 8.1;若 php -v 显示 8.2,那很可能 which php 指向另一个版本,此时应运行 /usr/bin/php8.1 --ini 单独查 8.1 的配置路径。


















