使用 PHP 5.5 安装 xdebug

2022-08-30 17:09:54

我已经读了很多答案,但无法弄清楚为什么xdebug不起作用。

php.ini:

[xdebug]
zend_extension="/usr/lib/php5/20090626/xdebug.so"

php -v:

PHP 5.5.6-1+debphp.org~precise+2 (cli) (built: Nov 21 2013 14:31:41) 
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2013 Zend Technologies
    with Zend OPcache v7.0.3-dev, Copyright (c) 1999-2013, by Zend Technologies

/usr/lib/php5/20090626/xdebug.so 确实存在。php中没有zend optimizer.ini。

另外,如果我尝试安装xdebug:

pecl/xdebug is already installed and is the same as the released version 2.2.3
install failed

提前致谢。


答案 1

好吧,我自己也偶然发现了这一点。

首先,20090626 lib 是为 php 5.3 编译的。所以你不能真正使用它。以下是我执行的步骤,以便能够将xdebug与php 5.5一起使用:

  1. 通过 xdebug 下载页面下载源代码
  2. 按照本指南将源代码编译为 lib。
  3. 所以现在扩展名在正确的源文件夹中:20121212,你需要在配置中启用xdebug。
  4. 我使用的是 ubuntu 12.04,所以后续步骤可能不适用于您的系统:

    • 创建 20-xdebug.ini 配置并将其复制到 /etc/php5/apache/conf.d 和 /etc/php5/cli/conf.d 文件夹中(当然,如果您计划在 cli 中使用 xdebug)。在此处插入下一行代码:zend_extension=xdebug.so
    • 在 apache2 和 cli php.ini 配置文件中启用 xdebug:查看有关 xdebug 设置的更多信息:http://xdebug.org/docs/all_settings
      xdebug.remote_enable = 1
      xdebug.renite_enable = 1
      xdebug.max_nesting_level = 1000
      xdebug.profiler_enable_trigger = 1
      xdebug.profiler_output_dir = '/var/log'
      

php -v:

PHP 5.5.7-1+sury.org~precise+1 (cli) (built: Dec 12 2013 21:37:40) 
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2013 Zend Technologies
    with Zend OPcache v7.0.3-dev, Copyright (c) 1999-2013, by Zend Technologies
    with Xdebug v2.2.3, Copyright (c) 2002-2013, by Derick Rethans

答案 2

由于这似乎困扰了越来越多的人试图通过pecl安装xdebug,因此以下是选项:

使用PECL为PHP5.5安装X-Debug,因为@Slayer Birden也回答了这个问题,到目前为止将无法正常工作,我认为它在不久的将来不会改变。


推荐