打开链接:https://xdebug.org/wizard.php
将执行phpinfo()
得到的页面全部复制到文本框进去,点击“Analyse my phpinfo() output”自动生成安装指引。
以下内容是针对我的机器生成的指引,做个记录方便下次查看。
摘要
- Xdebug installed: no
- Server API: FPM/FastCGI
- Windows: no
- Zend Server: no
- PHP Version: 7.0.33-0
- Zend API nr: 320151012
- PHP API nr: 20151012
- Debug Build: no
- Thread Safe Build: no
- OPcache Loaded: no
- Configuration File Path: /etc/php/7.0/fpm
- Configuration File: /etc/php/7.0/fpm/php.ini
- Extensions directory: /usr/lib/php/20151012
安装步骤
- 下载插件源码 xdebug-2.7.2.tgz
- 安装编译环境:apt-get install php-dev autoconf automake
- 解压源码包:tar -xvzf xdebug-2.7.2.tgz
- 进入解压目录:cd xdebug-2.7.2
- 执行命令:phpize
- 执行命令:./configure
- 执行命令:make
- 执行命令:cp modules/xdebug.so /usr/lib/php/20151012
- 编辑/etc/php/7.0/fpm/php.ini,添加以下内容到末尾:
zend_extension = /usr/lib/php/20151012/xdebug.so
10.重启php7.0-fpm
远程调试设置
参考地址:https://xdebug.org/docs/remote
将以下内容添加到php.ini文件末尾:
xdebug.remote_enable = on
xdebug.remote_autostart = on
xdebug.remote_host=192.168.1.2
;xdebug.remote_connect_back = 1
xdebug.remote_log=/var/tmp/xdebug.log
-
如果是内网调试,将remote_host设置为本机地址即可。
通常情况下这样设置足够了,但如果本机地址经常变化,则可以设置xdebug.remote_connect_back=1。 -
如果服务器在外网,就将xdebug.remote_connect_back=1前面的注释取消掉。
另外本机如果在内网,服务器是无法直接连接的,需要在网关设置端口9000映射到本机9000端口。 -
XDebug的其它参数使用默认值即可。
Visual Studio Code的php调试设置
文件->首选项->设置,或者快捷键 Ctrl + ,
进入设置窗口。点击右上角的{}
按钮进入文本编辑模式。添加以下内容:
"php.validate.executablePath": "c:/php/php7/php.exe",
"php.executablePath": "c:/php/php7/php.exe",
将路径修改为本机php7的安装路径即可。
打开VSCode左边调试界面,点击调试按钮右边的设置按钮,打开launch.json
文件,在configurations
一节添加以下内容:
{
"name": "Listen for XDebug",
"type": "php",
"request": "launch",
"port": 9000,
"pathMappings": {
"/var/share/www/tp5" : "${workspaceRoot}"
},
}
上面的路径改为服务器站点的完整路径。