XAMPP 中的 php.ini 中缺少 XDebug 配置

Posted

技术标签:

【中文标题】XAMPP 中的 php.ini 中缺少 XDebug 配置【英文标题】:XDebug configuration missing from php.ini in XAMPP 【发布时间】:2017-05-13 03:26:47 【问题描述】:

我刚从官网安装了最新的XAMPP for php 5.6,需要开启Xdebug,我发现C:\xampp\php\ext里面有php_xdebug.dll这个文件,但是[XDebug]里面没有配置全部在php.ini 中,我不知道如何使它工作。它应该默认安装并预先配置,我们只需取消注释 php.ini 中的 xdebug 配置,但事实并非如此。我什至尝试使用PECL commmand pecl install xdebug 再次安装它,但出现以下错误:

pecl install xdebug
downloading xdebug-2.5.0.tgz ...
Starting to download xdebug-2.5.0.tgz (267,640 bytes)
.........done: 267,640 bytes
ERROR: failed to mkdir C:\php\pear\docs\xdebug\contrib

在 PHPStorm 中,当我选择通过在 XAMPP 目录中选择 php.exe 添加解释器时,它也会显示 Debugger : Not installed

我重新安装了 XAMPP,但我仍然遇到同样的问题。 提前致谢。

【问题讨论】:

您可以尝试下载其他XAMPP版本来获取php.ini的变量或查看xdebug文档并声明它们:xdebug.org/docs/basic @F***oAraujo 我做了,但在其他 xampp 版本中也没有 xdebug 配置。 双重安装从来没有解决了任何问题。 ***.com/questions/41290093/… ***.com/a/13535077/1906372 【参考方案1】:

有关详细信息,您可以找到说明分步过程的教程 php-debugging-with-xdebug-atom-and-xampp

按照本教程,请按照以下步骤操作,它就像一个魅力:

安装 Xdebug 的步骤:

    下载xdebug-2.4.0.tgz

    解压下载的文件

    # navigate to the downloaded file
    $ cd ~/Downloads
    
    $ tar -xvzf xdebug-2.4.0.tgz
    $ cd xdebug-2.4.0
    

    运行 phpize

    $ phpize
    
    # example output
    Configuring for:
    PHP Api Version:         20131106
    Zend Module Api No:      20131226
    Zend Extension Api No:   220131226
    
    #Error possibilty
    Cannot find autoconf. Please check your autoconf installation and the
    $PHP_AUTOCONF environment variable. Then, rerun this script.
    
    #In the above error case you need to install autoconf using below command(MAC) and rerun phpize
    $ brew install autoconf
    

    phpsize 命令用于准备构建环境 PHP 扩展。

    运行配置:

    $ ./configure
    

    运行制作

    $ make
    

成功安装将创建 xdebug.so 文件。

配置 Xdebug 的步骤:

成功安装将创建 xdebug.so 并将其放入 PHP 扩展目录。

    为此,您必须将此文件复制到 XAMPP php 扩展目录 运行:-

    $ sudo cp modules/xdebug.so /Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20160303
    

    最后更新/Applications/XAMPP/xamppfiles/etc/php.ini并添加 以下几行

    [Xdebug]
    zend_extension = /Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20160303/xdebug.so
    xdebug.remote_enable=1
    xdebug.remote_connect_back=On
    xdebug.remote_port="9000"
    xdebug.profiler_enable=0
    xdebug.remote_handler=dbgp
    xdebug.remote_mode=req
    xdebug.remote_autostart=true
    
    使用 XAMPP 的 manager-osx 重启 Apache

恭喜!你已经完成了!!要验证您已成功安装和配置 XDebug,请在 Web 浏览器中打开 XAMPP phpinfo.php 文件,例如 http://localhost/dashboard/phpinfo.php。

在 PHPInfo 详细信息中搜索 XDebug 部分。如果存在,则您已成功完成安装 或 在另一个浏览器窗口或选项卡中,打开https://xdebug.org/wizard.php 并复制第一个窗口或选项卡中的 phpinfo.php 页面内容并将其粘贴到 xdebug.org 页面上的文本框中。然后提交分析,它会给出你的安装状态的总结。

【讨论】:

向导没有为我打开。我得到了总结,然后什么都没有。 第一个链接失效【参考方案2】:

最安全的是使用XDebug wizard,它将逐步指导您如何在自己的机器上安装。然后update your php.ini(根据您的需要调整)

注意: 向导将为您提供有关它从哪个 SAPI 接收 phpinfo() 内容的说明。因此,如果您填写 CLI phpinfo() 输出,您将获得 PHP CLI 的说明。如果您从服务器页面粘贴phpinfo(),您将获得相关说明。

【讨论】:

如果我能给你 2 up 我会的。忘了这个 - 救命稻草! 很高兴它有帮助! :)【参考方案3】:

首先复制您的 phpinfor() 内容表单。粘贴 [xdebug 向导][1] [1]:https://xdebug.org/wizard。然后下载 xdebug.dll。之后按照以下步骤操作

删除已存在的 php_xdebug.dill 并粘贴 xampp\php\ext\php_xdebug.dll

像这样更新 php.ini

[Xdebug] zend_extension = "C:\xampp\php\ext\php_xdebug.dll" xdebug.remote_enable=1 debug.remote_autostart=true

【讨论】:

谢谢!我错过了 php.ini 配置!【参考方案4】:

我找到了一个解决方案,即使在 NetBeans +xampp here 中安装了 xdebug 后,xdebug 也无法正常工作。这个想法是你必须使用这里提到的 php.ini 的所有设置,而不仅仅是论坛中提到的常见设置。

【讨论】:

以上是关于XAMPP 中的 php.ini 中缺少 XDebug 配置的主要内容,如果未能解决你的问题,请参考以下文章

xampp 1.7.4 + winxp + 日食

Magento PHP 扩展国际 - XAMPP

在 XAMPP 中为 wp-cli.phar 使用不同的 php.ini

我无法让 xdebug 工作

在 xampp、windows 中启用 curl

在安装了 xampp 的 Wordpress 上导入 XML