在 Ubuntu 上验证 PHP 配置,通常可以从命令行和Web 环境两个角度来检查。下面按常见场景给你一套完整、实用的验证方法。
一、确认 PHP 是否已安装
php -v
✅ 正常输出示例:
PHP 8.1.2 (cli) (built: ...)
如果提示 command not found,说明 PHP 未安装或未加入 PATH。
二、验证 PHP CLI 配置(命令行)
1️⃣ 查看 CLI 使用的 php.ini 路径
php --ini
输出示例:
Loaded Configuration File: /etc/php/8.1/cli/php.ini
✅ 这个文件是 CLI 模式的配置(命令行 PHP)
2️⃣ 查看某个 PHP 配置项
例如查看 upload_max_filesize:
php -i | grep upload_max_filesize
或:
php -r "echo ini_get('upload_max_filesize');"
三、验证 PHP-FPM 配置(Web 环境常用)
如果你是通过 Nginx / Apache + PHP-FPM 运行 PHP,CLI 配置 ≠ Web 配置。
1️⃣ 查看 PHP-FPM 使用的 php.ini
php-fpm8.1 -i | grep "Loaded Configuration File"
或:
ls /etc/php/8.1/fpm/
常见路径:
/etc/php/8.1/fpm/php.ini
2️⃣ 查看 PHP-FPM 是否运行
systemctl status php8.1-fpm
启动 / 重启:
sudo systemctl restart php8.1-fpm
四、通过 Web 页面验证 PHP 配置(最可靠 ✅)
1️⃣ 创建测试文件
sudo nano /var/www/html/phpinfo.php
内容:
<?php
phpinfo();
2️⃣ 浏览器访问
http://服务器IP/phpinfo.php
你可以看到:
- PHP 版本
- 实际加载的
php.ini - 所有配置项
- 已加载模块
⚠️ 测试完成后务必删除
rm /var/www/html/phpinfo.php
五、验证 PHP 与 Web 服务器是否正常工作
✅ Nginx 示例
确认 Nginx 配置中包含:
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.1-fpm.sock;
}
重载 Nginx:
sudo systemctl reload nginx
✅ Apache 示例
sudo apt install libapache2-mod-php
sudo systemctl restart apache2
六、常见验证命令速查表
| 目的 | 命令 |
|---|---|
| 查看 PHP 版本 | php -v |
| 查看 CLI php.ini | php --ini |
| 查看 Web php.ini | phpinfo() |
| 查看 PHP-FPM 状态 | systemctl status php8.1-fpm |
| 查看某个配置项 | php -i | grep 配置名 |
七、常见坑提醒 ⚠️
- CLI 和 FPM 用的是不同的 php.ini
- 修改配置后:
- CLI:立即生效
- FPM:必须重启 PHP-FPM
-
phpinfo()看到的是“真实生效配置”
如果你愿意,可以告诉我:
- Ubuntu 版本
- PHP 版本
- 使用的是 Nginx 还是 Apache
我可以帮你精确检查某一项配置(如上传大小、OPcache、错误日志等)。