Xdebug 常见于本地调试、错误追踪和开发排查,但在源码编译安装的 PHP 环境里,安装方式和软件仓库版并不一样。下面按“源码获取、编译安装、配置生效、结果验证”几个步骤整理,照着检查路径和模块加载顺序,基本就能顺利装好。
下载源码并完成编译安装
这篇示例针对的是源码编译安装的 PHP。如果你的 PHP 是通过 yum 或 apt 安装的,处理方式会不同,原文也提示可以参考官网的 Installation Xdebug。

先下载指定版本的 Xdebug 源码包:
wget https://xdebug.org/files/xdebug-2.9.2.tgz
下载完成后解压:
tar -xzf xdebug-2.9.2.tgz
进入源码目录,准备编译:
cd xdebug-2.9.2/
接下来先执行 phpize。这一步用于生成扩展编译所需的环境,命令通常位于 PHP 安装目录下的 bin 目录:
/usr/local/php/bin/phpize
然后执行 configure,并通过 --with-php-config 显式指定当前 PHP 的配置工具路径。这里的 /usr/local/php/bin/php-config 同样位于 PHP 的安装目录中:
./configure --enable-xdebug --with-php-config=/usr/local/php/bin/php-config
确认配置过程无误后,开始编译并安装:
make && make install
这一阶段的关键点有两个:一是 phpize 和 php-config 必须来自你当前正在使用的那套 PHP;二是源码包版本、PHP 版本和目标环境要能对应起来,否则即便编译通过,后续也可能出现扩展无法加载的问题。
修改 php.ini 并处理扩展加载顺序
安装完成后,还需要在 PHP 配置文件里手动启用 Xdebug。先找到 php.ini 的位置,常见路径是在 PHP 安装目录下的 etc 目录。

在配置文件末尾加入以下内容:
[Xdebug]
zend_extension="xdebug.so"
这里有一个容易忽略的细节:如果环境里同时启用了 Xdebug 和 OPCache,那么 Xdebug 这一行必须写在 OPCache 配置之后。原文特别提醒了这一点,因为加载顺序不对时,两者可能无法正常工作。
换句话说,如果你已经在 php.ini 中配置了 OPCache,排查 Xdebug 不生效时,除了检查扩展路径,也要先确认顺序是否正确。
重启服务并验证是否生效
配置写完后,重启相关服务让新扩展生效,例如 php-fpm。
重启完成后,可以通过两种方式确认 Xdebug 是否已经加载成功。第一种是在 phpinfo() 页面查看模块信息;第二种是在命令行中直接列出当前已安装模块:
php -m
如果输出结果中已经能看到 Xdebug,通常就说明安装和配置已经完成。若命令行能看到模块、网页侧却没有生效,则需要进一步确认实际运行的 PHP-FPM 是否使用了同一份 php.ini,以及 Web 环境和 CLI 环境是否指向同一套 PHP 安装路径。
整体来看,这篇安装过程并不复杂,真正容易出错的地方主要集中在三处:PHP 工具链路径是否对应、zend_extension 是否正确写入、以及与 OPCache 的加载顺序是否合理。把这几项逐一核对,CentOS 下给源码安装的 PHP 启用 Xdebug 基本就能顺利完成。













