5

我正在尝试在 mamp 上运行 xdebug 并遵循了许多教程,但是当我在 phpinfo() 中看到它时,我没有找到 xdebug。正如我阅读的那样,xdebug 已经包含在 mamp 中。是我在 php.ini 中添加的行,我还去了那个位置查看 xdebug.so 是否存在。但它仍然无法正常工作。有什么帮助吗?我正在使用 mamp 2.1.2

ps 我修改了php版本以在php.ini中从php5到php5.4.10进行挖掘

4

4 回答 4

16

我不知道是否为时已晚,但我确信有人需要真正的答案。

要解决在线问题,必须将 php.ini 更改为正确的路径...

对于 php 5.4.10,有两个 php.ini,我都更改了,它对我有用。他们在:

MAMP/conf/php5.4.10/php.ini
and
MAMP/bin/php/php5.4.10/conf/php.ini

当我更改第二个时,我重新加载 MAMP 并且它工作!如果你想知道它是否工作,在 localhost 上打开 MAMP,点击 phpinfo 并找到 xdebug。

另外,我不得不说我在 httpd.conf (MAMP/conf/apache) 中将端口 8888 更改为 80(您必须将 Listen:8888 更改为 Listen:80 并将 local_host:8888 更改为 local_host:80。(不带 _)在这种情况下,你只需要去 http://localhost 就可以看到你的项目

于 2013-08-23T10:23:00.377 回答
1

谢谢@titolancreo!

几个小时后,我正要放弃今天,只需在两个 php.ini 中添加相同的行,它就突然起作用了!

您也可以在终端中执行此操作以了解它是否有效:

php -m

您应该能够看到 Xdebug 模块两次,一次在 [PHP Modules] 列表中,另一次在 [Zend Modules] 列表中。

于 2013-11-12T17:06:25.100 回答
0

确保您正在收听来自 php.info 的正确端口,对我来说是 xdebug.remote_port=9900

然后在vcode中

{
        "name": "Listen for XDebug",
        "type": "php",
        "request": "launch",
        "port": 9900
    },
于 2020-04-30T06:34:12.790 回答
0

您还必须检查——(我已经看到了)——xdebug.so 文件是否存在于 php.ini 中指定的位置。

在我的情况下,原来的行是:

zend_extension="/Applications/MAMP/bin/php/php7.1.0/lib/php/extensions/no-debug-non-zts-20151012/xdebug.so"

我终于将其更改为指向正确的位置并且它起作用了:

zend_extension="/Applications/MAMP/bin/php/php7.1.0/lib/php/extensions/no-debug-non-zts-20160303/xdebug.so"

但是在 php_error.log 中没有错误消息。我无法弄清楚为什么某些 .so 文件在日志中被报告为丢失,而其他一些文件却没有,比如这个。

于 2017-03-22T13:30:22.357 回答