温馨提示×

ubuntu php配置怎么调试

小樊
40
2026-09-01 11:50:26
栏目: 编程语言

在 Ubuntu 上调试 PHP 配置和代码,通常可以从PHP 配置检查、错误日志、调试工具几个方面入手。下面按常见场景给你一个清晰指南。


一、查看 PHP 配置(先确认环境)

1. 查看 PHP 版本和运行方式

php -v
php -m        # 查看已加载模块

如果是 Web 环境(Apache / Nginx + PHP-FPM):

php --ini

会显示:

  • Loaded Configuration File(实际使用的 php.ini)
  • Scan dir(额外配置目录)

2. 查看当前 PHP 配置

php -i | less

或在 Web 目录建一个文件:

<?php
phpinfo();

访问该页面查看配置。


二、开启 PHP 错误显示(调试基础)

1. 修改 php.ini(推荐)

找到 php.ini(如 /etc/php/8.1/cli/php.inifpm/php.ini

确保以下配置:

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

修改后重启服务:

# PHP-FPM
sudo systemctl restart php8.1-fpm

# Apache
sudo systemctl restart apache2

# Nginx 一般只重启 PHP-FPM

2. 临时在代码中开启(不推荐生产)

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

三、查看 PHP 错误日志(最重要)

1. PHP 错误日志

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

如果没有该文件:

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

2. Web 服务日志

  • Apache:
tail -f /var/log/apache2/error.log
  • Nginx:
tail -f /var/log/nginx/error.log

四、命令行调试 PHP 脚本

1. 直接运行看错误

php your_script.php

2. 使用 lint 检查语法

php -l your_script.php

五、使用 Xdebug 进行断点调试(强烈推荐)

1. 安装 Xdebug

sudo apt install php-xdebug

或:

pecl install xdebug

2. 配置 Xdebug(php.ini)

zend_extension=xdebug.so
xdebug.mode=debug
xdebug.start_with_request=yes
xdebug.client_host=127.0.0.1
xdebug.client_port=9003

重启 PHP:

sudo systemctl restart php8.1-fpm

3. 使用 VS Code 调试

  • 安装 PHP Debug 插件
  • launch.json 示例:
{
  "name": "Listen for Xdebug",
  "type": "php",
  "request": "launch",
  "port": 9003
}

然后在代码里打断点,浏览器访问即可。


六、常见问题排查清单

✅ php.ini 改了没生效?
→ CLI 和 FPM 是两套 php.ini

✅ 页面空白?
→ 看 error_log,不是看浏览器

✅ Nginx 502?
→ PHP-FPM 没启动或 socket 配置错


七、推荐调试组合

  • 新手error_log + tail -f
  • 进阶:Xdebug + VS Code
  • 生产:只开 log_errors,关闭 display_errors

如果你能告诉我:

  • Ubuntu 版本
  • PHP 版本
  • Apache / Nginx
  • 是 Web 还是 CLI 调试

我可以给你更精确的一步步配置示例

0