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 配置的主要内容,如果未能解决你的问题,请参考以下文章