一.准备工作
1.安装vscode里扩展
PHP Debug和Remote - SSH
2.安装对应PHP版本的xdebug
去xdebug官方,复制自己的phpinfo源码到方框里
xdebug官方网址:https://xdebug.org/wizard
分析完成后,会有教程教你如何安装和编译xdebug
二.ssh连接和xdebug配置
安装好上述的模块后,打开vscode,点击左下角的><按钮,然后选择Connect to Host
然后输入ssh root@要连接的ip
连接成功后,打开你的项目文件夹
同样去安装一次xdebug扩展注意这次是在linux端安装
安装好后点击运行与调试,创建launch.json文件,创建后会有内容,注释掉括号里面的内容
添加如下内容,端口号可以自行修改
"version": "0.2.0",
"configurations": [
{
"name": "Debug current script in console",
"type": "php",
"request": "launch",
"program": "${file}",
"cwd": "${fileDirname}",
"externalConsole": false,
"port": 9001
},
{
"name": "Listen for Xdebug",
"type": "php",
"request": "launch",
"port": 9001
}
2.xdebug配置
先进入/etc/php/8.1/fpm/conf.d/20-xdebug.ini
写入内容
这里的端口与你改的端口要一致
zend_extension=xdebug.so
[XDebug]
xdebug.remote_enable = on
xdebug.start_with_request = 1
xdebug.mode=trace
xdebug.collect_includes = 1
xdebug.collect_params = 1
xdebug.mode=debug
xdebug.client_host=127.0.0.1
xdebug.client_port=9001
xdebug.start_with_request=yes
xdebug.remote_log=/var/log/xdebug.log
然后进入你下载PHP时自带的php.ini,一样在最后面加入上面的内容,重启php-fpm服务和web服务
三、xdebug调试,访问
最后在项目代码中打上断点,注意不是哪里都可以打断点
浏览器访问后,回到vscode,成功进入断点,接下来就可以调试了