在 CentOS 上开启 PHP 调试,通常分为**错误调试(报错显示)和断点调试(Xdebug)**两种情况。下面分别说明。
先找到 php.ini 位置:
php --ini
或
php -i | grep "Loaded Configuration File"
编辑 php.ini(路径可能不同):
vi /etc/php.ini
修改以下配置:
display_errors = On
display_startup_errors = On
error_reporting = E_ALL
log_errors = On
error_log = /var/log/php_errors.log
systemctl restart php-fpm
systemctl restart httpd
创建 test.php:
<?php
echo $undefined_var;
若能看到报错,说明成功。
CentOS 可用 yum / dnf:
yum install php-xdebug
或
dnf install php-xdebug
若没有包,可用 pecl:
yum install php-pear php-devel
pecl install xdebug
编辑 Xdebug 配置文件(可能在 /etc/php.d/15-xdebug.ini):
zend_extension=xdebug.so
xdebug.mode=debug
xdebug.start_with_request=yes
xdebug.client_host=127.0.0.1
xdebug.client_port=9003
systemctl restart php-fpm
php -m | grep xdebug
9003 端口php -d display_errors=1 script.php
如果你用的是 CentOS 7 / 8 / Stream、Nginx / Apache、PHP 7 / 8,可以告诉我具体环境,我可以给你更精确的配置。