昨天我配置了相关文件来调试基于Homestead的laravel代码,该代码当时可以通过jonagoldman对此site的回答进行正常调试。但是由于我在Windows下安装了xdebug来调试本地文件PHP脚本文件,现在无法远程调试。
我不知道这是否是因为Homestead中的本地Xdebug与Xdebug之间存在冲突。我已经找到了很多有关此的信息,但是没有一个人解决了。如果有人可以帮助我解决这个问题,我将非常感谢他。
我的操作系统是Windows 10,Laravel是5.5,php是7.1。
这是我的一些配置文件。
vscode launch.json: { “ version”:“ 0.2.0”, “配置”:[
{
"name": "Listen for XDebug",
"type": "php",
"request": "launch",
"port": 9000
},
{
"name": "Launch currently open script",
"type": "php",
"request": "launch",
"program": "${file}",
"cwd": "${fileDirname}",
"port": 9000
},
{
"name": "Listen for XDebug on Homestead",
"type": "php",
"request": "launch",
"pathMappings": {
"/home/vagrant/Code": "E:/Code"
},
"port": 9000
}
] }
宅基Xdebug.ini:
zend_extension = xdebug.so
xdebug.auto_trace = 1
xdebug.remote_enable = 1
xdebug.remote_host = 10.0.2.2
xdebug.remote_port = 9000
xdebug.remote_autostart = 1
phpinfo()Xdebug设置
xdebug xdebug支持已启用
版本2.5.5
IDE Key流浪汉
支持的协议修订版
DBGp-通用DeBuGger协议$ Revision:1.145 $
指令本地值主值
xdebug.auto_trace开启开启
xdebug.cli_color 0 0
xdebug.collect_assignments关闭关闭
xdebug.collect_includes开启开启
xdebug.collect_params 0 0
xdebug.collect_return关闭关闭
xdebug.collect_vars关关
xdebug.coverage_enable开启开启
xdebug.default_enable开启开启
xdebug.dump.COOKIE无值无值
xdebug.dump.ENV无值无值
xdebug.dump.FILES无值无值
xdebug.dump.GET无值无值
xdebug.dump.POST无值无值
xdebug.dump.REQUEST无值无值
xdebug.dump.SERVER无值无值
xdebug.dump.SESSION无值无值
xdebug.dump_globals开启开启
xdebug.dump_once开启开启
xdebug.dump_undefined关闭关闭
xdebug.extended_info开启开启
xdebug.file_link_format无值无值
xdebug.force_display_errors关关
xdebug.force_error_reporting 0 0
xdebug.halt_level 0 0
xdebug.idekey无值无值
xdebug.max_nesting_level 256256
xdebug.max_stack_frames -1 -1
xdebug.overload_var_dump 2 2
xdebug.profiler_aggregate关闭关闭
xdebug.profiler_append关关
xdebug.profiler_enable关关
xdebug.profiler_enable_trigger关关
xdebug.profiler_enable_trigger_value无值无值
xdebug.profiler_output_dir / tmp / tmp
xdebug.profiler_output_name cachegrind.out。%p cachegrind.out。%p
xdebug.remote_addr_header无值无值
xdebug.remote_autostart开启时
xdebug.remote_connect_back关关
xdebug.remote_cookie_expire_time 3600 3600
xdebug.remote_enable开启开启
xdebug.remote_handler dbgp dbgp
xdebug.remote_host 10.0.2.2 10.0.2.2
xdebug.remote_log无值无值
xdebug.remote_mode要求
xdebug.remote_port 9000 9000
xdebug.scream关闭关闭
xdebug.show_error_trace关关
xdebug.show_exception_trace关关
xdebug.show_local_vars关关
xdebug.show_mem_delta关关
xdebug.trace_enable_trigger关关
xdebug.trace_enable_trigger_value无值无值
xdebug.trace_format 0 0
xdebug.trace_options 0 0
xdebug.trace_output_dir / tmp / tmp
xdebug.trace_output_name跟踪。%c跟踪。%c
xdebug.var_display_max_children 128128
xdebug.var_display_max_data 512512
xdebug.var_display_max_depth 3 3
Homestead.yaml
ip:“ 192.168.10.10” 记忆体:2048 cpus:1 提供商:virtualbox
授权:〜/ .ssh / id_rsa.pub
键: -〜/ .ssh / id_rsa -〜/ .ssh / id_rsa.pub
文件夹: -地图:e:/代码 到:/ home / vagrant / Code
网站:
- map: sample.test
to: /home/vagrant/Code/sample/public
- map: Demo.test
to: /home/vagrant/Code/demo/public
数据库: -演示 -样本
变量: -键:APP_ENV 值:本地
答案 0 :(得分:0)
我和你有同样的问题。但是,我可以调试修复launch.json。
我的launch.json设置在下面。
{
"name": "Homestead",
"type": "php",
"request": "launch",
"pathMappings": {
// "/home/vagrant/code": "D:/workspace/laravel_work" // can't work
"/home/vagrant/code": "${workspaceRoot}" // work
// "/home/vagrant/code": "D:\\workspace\\laravel_work"// work
},
"port": 9000
}
您应该修复launch.json
{
"name": "Listen for XDebug on Homestead",
"type": "php",
"request": "launch",
"pathMappings": {
//"/home/vagrant/Code": "E:/Code"
"/home/vagrant/Code": "E:\\Code"
},
"port": 9000
}