Xdebug无法连接到调试客户端。尝试过:本地主机:9000
我在 Xdebug v2 之前使用过,但在上次更新后我遇到了 Xdebug v3.0.0,我替换了更新用户指南所需的所有内容
我正在使用 Docker。
我的调试配置
#xdebug.remote_enable=true
xdebug.mode=debug
#xdebug.remote_port=9000
xdebug.client_port=9000
xdebug.remote_host=172.17.0.1
xdebug.remote_handler=dbgp
#xdebug.remote_autostart=1
xdebug.start_with_request=yes
#xdebug.remote_connect_back=0
xdebug.discover_client_host=0
xdebug.idekey=PHPSTORM
xdebug.show_error_trace = 1
xdebug.max_nesting_level=250
xdebug.var_display_max_depth=10
#xdebug.remote_mode=req
xdebug.remote_log=/var/log/r_xdebug.log
xdebug.log=/var/log/xdebug.log
以及我在尝试执行任何 PHP 脚本时得到的日志:
tail -f /var/log/xdebug.log
[888] Log opened at 2020-11-29 10:39:51.670762
[888] [Step Debug] INFO: Connecting to configured address/port: localhost:9000.
[888] [Step Debug] WARN: Creating socket for 'localhost:9000', poll success, but error: Operation now in progress (29).
[888] [Step Debug] WARN: Creating socket for 'localhost:9000', connect: Cannot assign requested address.
[888] [Step Debug] ERR: Could not connect to debugging client. Tried: localhost:9000 (through xdebug.client_host/xdebug.client_port) :-(
[888] Log closed at 2020-11-29 10:39:57.515970
当我尝试在浏览器中执行 URL 时 PhpStorm 没有启动调试器,但我检查了
lsof -i :9000 | grep LISTEN
当我在 PhpStorm 中单击侦听时出现侦听端口。我的配置是同步的File | Settings | Languages & Frameworks | PHP | Debug-> 调试端口 9000
我的 Xdebug 配置有什么问题以及我需要做什么?
回答
我只想分享我是如何从 2.x 迁移到 3.x
;Xdebug 2.X
;xdebug.remote_enable=true
;xdebug.remote_port=9000
;xdebug.remote_host=172.17.0.1
;
;xdebug.remote_autostart=1
;xdebug.remote_connect_back=0
;xdebug.idekey=PHPSTORM
;xdebug.show_error_trace = 1
;xdebug.max_nesting_level=250
;xdebug.var_display_max_depth=10
;xdebug.remote_mode=req
;Xdebug 3.X
xdebug.mode=debug
xdebug.client_port=9000
xdebug.client_host=172.17.0.1
xdebug.remote_handler=dbgp
xdebug.start_with_request=yes
xdebug.discover_client_host=0
xdebug.idekey=PHPSTORM
xdebug.show_error_trace = 1
xdebug.max_nesting_level=250
xdebug.var_display_max_depth=10
xdebug.log=/var/log/xdebug.log
- Also I think the port is no changed from 9000 to 9003 [here](https://xdebug.org/docs/upgrade_guide#Step-Debugging)
回答
Please, update your xdebug file to:
xdebug.mode=debug
xdebug.start_with_request=yes
xdebug.discover_client_host=1