我遇到了一个问题,我不确定这是一个问题还是有意为之。
xdebug.mode=debug
xdebug.start_upon_error=yes
脚本中没有(未捕获的)错误或异常,但在请求处理期间会多次启动连接。这会导致极慢的响应,尤其是当客户端未在侦听时,这会在控制台中多次出现 (4-6)。
[Fri Apr 23 15:32:31 2021] Xdebug: [Step Debug] Time-out connecting to debugging client, waited: 200 ms. Tried: localhost:9003 (through xdebug.client_host/xdebug.client_port) :-(
所有异常都得到了正确处理,响应还可以,只是非常慢。
如果我转向start_upon_error
或no
to mode
,develop
这个问题就会消失。
该文档没有说明有关此主题的任何内容,而两者xdebug.show_error_trace
都有xdebug.show_exception_trace
信息,如下所示:
当此设置设置为 1 时,Xdebug 将在引发错误时显示堆栈跟踪 - 即使实际捕获了此错误。
所以我的问题是,这种行为是有意的吗?如果是这样,它也应该出现在文档中。
使用 Xdebug 版本 3.0.0 和 3.0.4(PHP 8、ZTS、x64)进行了尝试。感谢您提前做出反应。