温馨提示×

怎么调试ubuntu php配置

小樊
43
2026-09-28 14:06:02
栏目: 编程语言

在 Ubuntu 上“调试 PHP 配置”通常分为几个层面:确认 PHP 是否生效、查看当前配置、定位配置文件、排查错误、调整参数并验证。下面按实用步骤来。


一、确认 PHP 版本与运行状态

1. 查看 PHP 版本

php -v

如果是 Web 环境(Apache/Nginx),还要确认 CLI 和 Web 用的是不是同一个 PHP。

2. 查看 PHP 信息(非常关键)

创建一个测试文件:

echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/phpinfo.php

浏览器访问:

http://你的IP/phpinfo.php

可以看到:

  • Loaded Configuration File(实际加载的 php.ini)
  • 当前生效的配置项

⚠️ 测试完务必删除:

sudo rm /var/www/html/phpinfo.php

二、找到正确的 php.ini 文件

CLI 模式

php --ini

Web 模式(Apache / Nginx + PHP-FPM)

常见位置:

/etc/php/8.1/apache2/php.ini
/etc/php/8.1/fpm/php.ini
/etc/php/8.1/cli/php.ini

(版本号按你实际安装来)

Web 和 CLI 是两套配置,改错文件不会生效。


三、开启错误显示(调试必备)

编辑对应 php.ini:

sudo nano /etc/php/8.1/fpm/php.ini

修改或确认:

display_errors = On
display_startup_errors = On
error_reporting = E_ALL
log_errors = On
error_log = /var/log/php_errors.log

保存后重启服务:

Apache:

sudo systemctl restart apache2

Nginx + PHP-FPM:

sudo systemctl restart php8.1-fpm
sudo systemctl restart nginx

四、查看 PHP 错误日志

sudo tail -f /var/log/php_errors.log

或 Apache 错误日志:

sudo tail -f /var/log/apache2/error.log

五、命令行快速调试

1. 检查语法

php -l yourfile.php

2. 模拟执行

php yourfile.php

3. 查看已加载模块

php -m

六、常见问题排查清单

✅ PHP 不生效?

  • Apache 是否启用 php 模块:
sudo a2enmod php8.1
  • Nginx 是否配置 fastcgi_pass

✅ 修改 php.ini 不生效?

  • 改错文件(CLI vs FPM)
  • 没重启服务

✅ 上传/超时问题?

upload_max_filesize = 64M
post_max_size = 64M
max_execution_time = 300

七、懒人调试法(开发环境)

在 PHP 文件顶部加:

ini_set('display_errors', 1);
error_reporting(E_ALL);

如果你能说明:

  • Ubuntu 版本
  • PHP 版本
  • Apache 还是 Nginx
  • 具体“配置不生效 / 报错内容”

我可以直接帮你定位问题。

0 踩