问答 / 9 / 2 / 创建于 4年前 / 更新于 4年前
windows;PHP7.3;phpstorm-2020.3.2;Xdebug_nts_3_vc15_64;phpstudy集成环境。
phpstorm监听本机Post请求,根据断点调试代码。
phpstorm只能监听/调试 浏览器打开的PHP文件代码,根据断点在phpstorm调试【第三张图】。发送Post请求本机可以收到,可以正常处理并返回结果, 但是断点没有预期效果【第四张图--到最后】。
Xdebug 需要收到某种信号才会激活。可以在请求中带上 XDEBUG_SESSION_START 参数或者在 Cookie 中带上 XDEBU_SESSION。
Xdebug
XDEBUG_SESSION_START
Cookie
XDEBU_SESSION
或者也可以将 xdebug.remote_autostart 参数设为 1,Xdebug 就会对每个请求都去尝试建立远程调试会话。就不用在请求时独立带上前面提到的参数了。
xdebug.remote_autostart
1
xdebug.remote_autostart 参数是Xdebug 2.x的写法,3.x是 start_with_request ; 配置调通后太高兴了,于是在2.x和3.x之间来回切换查看差异,频繁在php.ini编辑,结果有点不正常了,第一个断点不会挂起,如果只有一个断点就等于刚配置时没有断点一样,当然phpStorm也提示了,按照提示没有解决。这个是个遗憾。调试会话已完成且未暂停 这可能是由于路径映射配置错误或本地和远程项目未同步。要找出问题,请在 PHP|服务器下检查 'wxminrun' 服务器的路径映射配置,或启用 '在 PHP 脚本中的第一行中断' 选项(位于运行菜单下)。 不再显示
start_with_request
调试会话已完成且未暂停 这可能是由于路径映射配置错误或本地和远程项目未同步。要找出问题,请在 PHP|服务器下检查 'wxminrun' 服务器的路径映射配置,或启用 '在 PHP 脚本中的第一行中断' 选项(位于运行菜单下)。 不再显示
一个断点不会挂起的问题解决了,phpStorm配置的问题。
这玩意儿我开启之后WIN下的PHP环境巨卡
我要举报该,理由是:
Xdebug
需要收到某种信号才会激活。可以在请求中带上XDEBUG_SESSION_START
参数或者在Cookie
中带上XDEBU_SESSION
。或者也可以将
xdebug.remote_autostart
参数设为1
,Xdebug
就会对每个请求都去尝试建立远程调试会话。就不用在请求时独立带上前面提到的参数了。