温馨提示×

怎样调试ubuntu php配置

小樊
37
2026-09-16 14:39:09
栏目: 编程语言

在 Ubuntu 上调试 PHP 配置,通常分为 确认 PHP 版本与配置位置、查看当前配置、修改配置、排查常见错误 几个步骤。下面按实用流程来讲。


一、确认 PHP 环境

1. 查看 PHP 版本

php -v

2. 查看 CLI 使用的 php.ini

php --ini

示例输出:

Loaded Configuration File: /etc/php/8.1/cli/php.ini

⚠️ 注意:

  • CLI(命令行)和 Web(Apache / Nginx + PHP-FPM)使用的 php.ini 可能不同

二、查看 Web 环境下的 PHP 配置

如果是 Apache

phpinfo();

创建测试文件:

sudo nano /var/www/html/info.php

内容:

<?php
phpinfo();

浏览器访问:

http://服务器IP/info.php

查看:

  • Loaded Configuration File
  • Server API(Apache 2.0 Handler)

如果是 Nginx + PHP-FPM

PHP-FPM 的配置文件通常在:

/etc/php/8.1/fpm/php.ini

查看 PHP-FPM 状态:

systemctl status php8.1-fpm

三、常见 PHP 配置位置(Ubuntu)

以 PHP 8.1 为例:

环境 配置文件
CLI /etc/php/8.1/cli/php.ini
Apache /etc/php/8.1/apache2/php.ini
PHP-FPM /etc/php/8.1/fpm/php.ini

附加配置目录:

/etc/php/8.1/mods-available/
/etc/php/8.1/fpm/conf.d/

四、常用调试相关配置

编辑 php.ini:

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

1. 打开错误显示(开发环境)

display_errors = On
display_startup_errors = On
error_reporting = E_ALL
log_errors = On

2. 错误日志

error_log = /var/log/php_errors.log

创建日志文件:

sudo touch /var/log/php_errors.log
sudo chown www-data:www-data /var/log/php_errors.log

五、修改配置后必须重启

Apache

sudo systemctl restart apache2

Nginx + PHP-FPM

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

六、命令行快速调试

查看某个配置项

php -i | grep display_errors

测试 PHP 语法

php -l test.php

命令行运行脚本

php test.php

七、常见问题排查

1. 修改了 php.ini 不生效

  • 改错文件(CLI vs FPM)
  • 没重启服务
  • conf.d 覆盖

查看加载顺序:

php --ini

2. 白屏(无错误)

  • display_errors = Off
  • 查看 error_log

3. 扩展未加载

php -m

安装扩展示例:

sudo apt install php8.1-mysql
sudo systemctl restart php8.1-fpm

八、推荐调试工具

  • php -l:语法检查
  • phpinfo():配置总览
  • tail -f /var/log/php_errors.log:实时日志
  • Xdebug(高级调试)

如果你能告诉我:

  • Ubuntu 版本
  • PHP 版本
  • Apache 还是 Nginx
  • 具体报错或现象

我可以给你更精确的排查步骤。

0