php - Xdebug xdebug.mode = 调试对我不起作用

标签 php xdebug php-7.4 xdebug-3

我已经在 Ubuntu 20.04 系统上安装了 Xdebug。我关注了this documentation ,我发现写得很好,并且按照规范安装了所有内容。 (我使用 apt 而不是 yum,并将 .so 文件放入 /usr/lib/php/20190902 文件夹而不是文档的示例中。)

在该文档中,有一个关于添加到 php.ini 文件的引用(我添加到 /etc/php/7.4/apache2/php.ini/etc/php/7.4/cli/php.ini 文件)。由于本文没有具体提及 .ini 文件的“部分”,因此我将它们放在 [PHP] 部分中。 (这与关于放在“快速引用”位之前的注释一致。)我重新启动了 Apache2,phpinfo() 输出现在包含 Xdebug,而它以前不包含它。一切都很好。

我遇到的麻烦是,虽然我在 php.ini 文件中设置了 xdebug.mode = debug,但 phpinfo() 输出告诉我 xdebug.mode 设置为 develop。因此,单步调试器在我的配置中显示为已禁用。我不明白为什么。

这些是我添加到每个 php.ini 文件中的行:

zend_extension="/usr/lib/php/20190902/xdebug.so
xdebug.mode = debug
xdebug.discover_client_host = 1
xdebug.start_with_request = yes

以下是 phpinfo() 输出的关键摘录:

Xdebug settings 1

Xdebug settings 2

一时兴起,我尝试将所有这些设置也放在 php.ini 的一个新部分中,我将其命名为 [xdebug]。当这不起作用时,我尝试了[Xdebug]。每次尝试后我都重新启动 Apache2,但症状从未改变。

我可能缺少什么?

最佳答案

zend_extension="/usr/lib/php/20190902/xdebug.so(有一个额外的 ")。

无论如何,很可能在某处存在另一个 xdebug.mode 行,或者正在使用不同的 INI 文件。尝试查看 xdebug_info() 的输出告诉您什么 - 它还提到了哪些 INI 文件已被读取。

关于php - Xdebug xdebug.mode = 调试对我不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71564544/

相关文章:

php - 克隆是写时复制吗?

php - PHP 中的散列。 SHA-256 如何工作?

recursion - PHP "Fatal error: Maximum function nesting level of ' 10 0' reached, aborting!"的解决方法

php - 即使在 apache2 中使用 Ondrej PPA 存储库,也无法在 Ubuntu 16.04 上安装 PHP 7.4

php - 是否可以在现有的Alpine 3.12 Docker镜像上安装PHP7.4?

php - 为什么我收到错误? (PHP、MySQL)

PHP远程调试: XDebug can't connect to JetBrains php Storm client

docker - 轮询成功,但 Xdebug 尝试从 docker 容器连接到 PhpStorm 时出现错误 : Operation now in progress (29).

PHP 7.4 警告 : Creating default object from empty value

php - 错误: No database selected when displaying data on website