Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

phpstorm如何配置调试虚拟机的项目 #67

Closed
CauliFlowor opened this issue Jan 5, 2021 · 16 comments
Closed

phpstorm如何配置调试虚拟机的项目 #67

CauliFlowor opened this issue Jan 5, 2021 · 16 comments

Comments

@CauliFlowor
Copy link

No description provided.

@huanghantao
Copy link
Member

  1. 设置好yasdremote_host,让虚拟机可以访问到宿主机
  2. phpstorm里面配置path mapping

@CauliFlowor
Copy link
Author

CauliFlowor commented Jan 5, 2021

  1. 好设置yasdremote_host,让虚拟机可以访问到宿主机
  2. phpstorm里面配置path mapping

path mapping 是指这里的项目路径匹配吗?
File | Settings | Languages & Frameworks | PHP | Path mappings

我设置了remote_host 为 宿主机ip,通过php -e bin/hyperf start 已经成功运行了项目,但是打了断点还是没效果。

@huanghantao
Copy link
Member

你看看这个issue#44

@CauliFlowor
Copy link
Author

你看看这个issue#44

这个issue里面的图片好像都访问不了了,我这边看不到。但我经过设置了目录映射后,执行php -e bin/hyperf start的时候就直接进入到 bin/hyperf.php文件调试,尽管这个文件没有打断点也会阻塞在第一行。打断点在控制器中,访问路由也没有进入调试。

@sy-records
Copy link
Member

@CauliFlowor 自动在bin/hyperf.php的第一行是 ide的配置,你可以修改。到这里的时候,点击debug窗口左上角的绿色图标,打断点在控制器中,然后等待启动成功,发起请求就会在断点处停止

@CauliFlowor
Copy link
Author

@CauliFlowor 自动在bin/hyperf.php的第一行是 ide的配置,你可以修改。到这里的时候,点击debug窗口左上角的绿色图标,打断点在控制器中,然后等待启动成功,发起请求就会在断点处停止

我就是这样做的,点击那个绿色的类似的播放按钮,然后打了断点在控制器中,项目启动成功后,浏览器发请求,没有停止,直接响应成功了

@huanghantao
Copy link
Member

确认一下,控制器是否生成了代理类,导致打断点失效。如果生成了代理类,请在代理类里面打断点。

@CauliFlowor
Copy link
Author

确认一下,控制器是否生成了代理类,导致打断点失效。如果生成了代理类,请在代理类里面打断点。

有生成代理类,但是在这里打了也是没有效果
image

@huanghantao
Copy link
Member

huanghantao commented Jan 5, 2021

配置一下Yasdini文件:

yasd.log_level=0

然后重复一次你的调试过程。结束后,会在当前目录生成文件debug.log,你贴一下我看看。

@CauliFlowor
Copy link
Author

CauliFlowor commented Jan 5, 2021

配置一下Yasdini文件:

yasd.log_level=0

然后重复一次你的调试过程。结束后,会在当前目录生成文件debug.log,你贴一下我看看。

加了这个配置直接好了!!!但是我又把这个配置去掉了,也是可以了!不知道为啥
image

@huanghantao
Copy link
Member

这不应该额。你这是最新的yasd代码吗?

@CauliFlowor
Copy link
Author

这不应该额。你这是最新的yasd代码吗?

是的,我昨天从这个项目的code克隆下来安装的

@huanghantao
Copy link
Member

这不应该额。你这是最新的yasd代码吗?

是的,我昨天从这个项目的code克隆下来安装的

好吧,能用就好。可能是之前你哪里没有配好。

@CauliFlowor
Copy link
Author

@huanghantao 感谢大佬的帮助!

@guluguru
Copy link

确认一下,控制器是否生成了代理类,导致打断点失效。如果生成了代理类,请在代理类里面打断点。

查了一天断点为什么不生效,最后发现是这个原因......

@cloud-arrow
Copy link

cloud-arrow commented Oct 13, 2023

@huanghantao 大佬帮忙看看

截屏2023-10-13 18 54 22 代理类打了断点, 刷新又不卡住的效果,但是控制台的debug没有唤起

开启了 yasd.log_level=0

527 <?xml version="1.0" encoding="iso-8859-1"?>
<init xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" fileuri="file:///home/ubuntu/code/php/test/hyperf/bin/hyperf.php" language="PHP" xdebug:language_version="7.4.33" protocol_version="1.0" appid="438135" idekey="PHPSTORM"><engine version="0.3.9-alpha"><![CDATA[Yasd]]></engine><author><![CDATA[Codinghuang]]></author><url><![CDATA[https://github.com/swoole/yasd]]></url><copyright><![CDATA[Copyright (c) 2020-2021 by Codinghuang]]></copyright></init> 
feature_set -i 1 -n show_hidden -v 1
209 <?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="feature_set" transaction_id="1" feature="show_hidden" success="0"/> 
feature_set -i 2 -n max_depth -v 1
207 <?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="feature_set" transaction_id="2" feature="max_depth" success="0"/> 
feature_set -i 3 -n max_children -v 100
210 <?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="feature_set" transaction_id="3" feature="max_children" success="0"/> 
feature_set -i 4 -n extended_properties -v 1
217 <?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="feature_set" transaction_id="4" feature="extended_properties" success="0"/> 
feature_set -i 5 -n notify_ok -v 1
207 <?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="feature_set" transaction_id="5" feature="notify_ok" success="0"/> 
feature_set -i 6 -n resolved_breakpoints -v 1
218 <?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="feature_set" transaction_id="6" feature="resolved_breakpoints" success="0"/> 
feature_set -i 7 -n breakpoint_include_return_value -v 1
229 <?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="feature_set" transaction_id="7" feature="breakpoint_include_return_value" success="0"/> 
stdout -i 8 -c 1
182 <?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="stdout" transaction_id="8" success="0"/> 
status -i 9
200 <?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="status" transaction_id="9" status="starting" reason="ok"/> 
step_into -i 10
306 <?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="step_into" transaction_id="10" status="break" reason="ok"><xdebug:message filename="file:///home/ubuntu/code/php/test/hyperf/bin/hyperf.php" lineno="4"/></response> 
eval -i 11 -- aXNzZXQoJF9TRVJWRVJbJ1BIUF9JREVfQ09ORklHJ10p
225 <?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="eval" transaction_id="11"><property type="bool"><![CDATA[0]]></property></response> 
eval -i 12 -- aXNzZXQoJF9TRVJWRVJbJ1NFUlZFUl9OQU1FJ10p
225 <?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="eval" transaction_id="12"><property type="bool"><![CDATA[0]]></property></response> 
eval -i 13 -- aXNzZXQoJF9TRVJWRVJbJ1NTSF9DT05ORUNUSU9OJ10p
225 <?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="eval" transaction_id="13"><property type="bool"><![CDATA[1]]></property></response> 
eval -i 14 -- KHN0cmluZykoJF9TRVJWRVJbJ1NTSF9DT05ORUNUSU9OJ10p
302 <?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="eval" transaction_id="14"><property type="string" size="35" encoding="base64"><![CDATA[MTkyLjE2OC42NC4xIDYxMTQ5IDE5Mi4xNjguNjQuMTAgMjI=]]></property></response> 
breakpoint_set -i 15 -t line -f file:///home/ubuntu/code/php/test/hyperf/app/Controller/IndexController.php -n 22
194 <?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="breakpoint_set" transaction_id="15" id="449190001"/> 
breakpoint_set -i 16 -t line -f file:///home/ubuntu/code/php/test/hyperf/app/Controller/IndexController.php -n 18
194 <?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="breakpoint_set" transaction_id="16" id="449190002"/> 
breakpoint_set -i 17 -t line -f file:///home/ubuntu/code/php/test/hyperf/runtime/container/proxy/App_Controller_IndexController.proxy.php -n 27
194 <?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="breakpoint_set" transaction_id="17" id="449190003"/> 
breakpoint_set -i 18 -t line -f file:///home/ubuntu/code/php/test/index.php -n 4
194 <?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="breakpoint_set" transaction_id="18" id="449190004"/> 
stack_get -i 19
320 <?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="stack_get" transaction_id="19" id="449190005"><stack where="main" level="0" type="file" filename="file:///home/ubuntu/code/php/test/hyperf/bin/hyperf.php" lineno="4"/></response> 
run -i 20
198 <?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="run" transaction_id="20" status="stopping" reason="ok"/> 
run -i 21
351 <?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="run" transaction_id="20" status="break" reason="ok"><xdebug:message filename="file:///home/ubuntu/code/php/test/hyperf/runtime/container/proxy/App_Controller_IndexController.proxy.php" lineno="27"/></response> 

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants