在我的項(xiàng)目中,我在運(yùn)行 VM 的 Vagrant 上有以下 Xdebug 設(shè)置:zend_extension=xdebug.soxdebug.remote_host=10.0.2.2debug.repomote_port=9000xdebug.remote_enable=1xdebug.max_nesting_level = 1000xdebug.remote_log=/tmp/xdebug.log在 VSCode 上,我是這樣設(shè)置的:{ // Use IntelliSense to learn about possible attributes. // Hover to view descriptions of existing attributes. // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "name": "Listen for XDebug", "type": "php", "request": "launch", "port": 9000, "pathMappings": { "/home/vagrant/code": "${workspaceRoot}", } } ]}xdebug 設(shè)置位于 vagrant vm 中,而 ide 位于主機(jī)上。主機(jī) Ip ( 10.0.2.2) 是通過(guò)以下命令提供的:netstat -rn | grep "^0.0.0.0 " | cut -d " " -f10然后我使用xdebug-helper以下設(shè)置在 Firefox 上啟用調(diào)試:但是我的 IDE 無(wú)法在斷點(diǎn)上停止執(zhí)行。在調(diào)試它時(shí),我打開了一個(gè)運(yùn)行 Vagrant 的虛擬機(jī)的 shell 會(huì)話:vagrant up && vagrant ssh然后我使用命令使用 TCP 協(xié)議測(cè)試與它的反向連接到端口 9000(在啟用 VSCode 以偵聽 xdebug 之后):nc -z -v 10.0.2.2 9000命令本身顯示消息:Connection to 10.0.2.2 9000 port [tcp/*] succeeded!此外,VSCode 實(shí)例也是一個(gè) vscodium 構(gòu)建,并具有felixfbecker.php-debug插件。你知道為什么 VSCodium 無(wú)法進(jìn)入斷點(diǎn)嗎?
1 回答

慕姐4208626
TA貢獻(xiàn)1852條經(jīng)驗(yàn) 獲得超7個(gè)贊
代碼真的被調(diào)用了嗎?
有時(shí)由于前端錯(cuò)誤,尤其是在 ajax 調(diào)用事件上,您的代碼甚至可能根本沒(méi)有調(diào)用。因此,首先確保您的代碼實(shí)際被調(diào)用,然后嘗試確定它是否是 xdebug 問(wèn)題。
因此,正在執(zhí)行從來(lái)賓到主機(jī)的 xdebug 連接。并且ip設(shè)置正確。因此,完全不調(diào)用具有斷點(diǎn)的代碼段是相當(dāng)合理的,因此 IDE 不會(huì)中斷到預(yù)期的斷點(diǎn)。
- 1 回答
- 0 關(guān)注
- 143 瀏覽
添加回答
舉報(bào)
0/150
提交
取消