当前位置: 首页 > news >正文

docker安装使用xdebug

docker安装使用xdebug
1、需要先安装PHP xdebug扩展
1.1 到https://pecl.php.net/package/xdebug下载tgz文件,下载当前最新稳定版本的文件。然后把这个tgz文件放到php/extensions目录下,记得install.sh中要替换解压的文件名: installExtensionFromTgz xdebug-3.2.2
在这里插入图片描述

1.2 php.ini可以提前设置好一些xdebug配置信息:

xdebug.remote_enable = 1
xdebug.remote_handler = "dbgp"
xdebug.mode=debug
xdebug.client_host=host.docker.internal
xdebug.client_port=9003
xdebug.idekey=PHPSTORM

1.3 修改php镜像配置之后,重新构建镜像:docker compose build php。然后重新启动镜像:docker compose up -d
1.4 执行phpinfo()之后,查看是否有生成xdebug信息。

2、修改phpstorm debug配置
参考文档:
https://learnku.com/articles/51381
https://www.jetbrains.com/help/phpstorm/2021.3/configuring-xdebug.html

先说自己踩到两个坑:
1、配置Servers的时候,填写项目地址,需要填写docker容器里的目录。比如(www/php_demo)
在这里插入图片描述

2、安装xdebug不同版本对应填写在php.ini的参数是不一样的。
文档地址:https://www.jetbrains.com/help/phpstorm/2021.3/configuring-xdebug.html
在这里插入图片描述

xdebug2版本:

xdebug.remote_enable = 1
xdebug.remote_handler = "dbgp"
xdebug.remote_host=host.docker.internal
xdebug.remote_port = 9003
xdebug.remote_log = /var/log/php/xdebug.log
xdebug.idekey=PHPSTORM

xdebug3版本:

xdebug.remote_enable = 1
xdebug.remote_handler = "dbgp"
xdebug.mode=debug
xdebug.client_host=host.docker.internal
xdebug.client_port=9003
xdebug.idekey=PHPSTORM

接下来详细讲一下PHPSTORM配置过程:
1、配置Server
在这里插入图片描述

2、配置Debug port
在这里插入图片描述

3、编辑项目的debug配置
在这里插入图片描述

4、启动debug
在这里插入图片描述

5、调试debug

5.1浏览器调试
1、在 Google 浏览器插件市场中下载 Xdebug
在这里插入图片描述

2、右键点击 Xdebug 图标选择选项点击进入配置页面将 IDE Key 设置完整保存。
在这里插入图片描述

3、设置好就可以请求接口了,可以查看headers头部是否有携带XDEUG_SESSION:
在这里插入图片描述

5.2、postman调试
在这里插入图片描述

http://www.lryc.cn/news/176324.html

相关文章:

  • (1) ESP32获取图像,并通过电脑端服务器显示图像
  • 乐鑫科技全球首批支持蓝牙 Mesh Protocol 1.1 协议
  • 1.算法——数据结构学习
  • 信息论基础第二章阅读笔记
  • Content-Type的取值
  • 【趣味JavaScript】5年前端开发都没有搞懂toString和valueOf这两个方法!
  • Python中的接口是什么?
  • 自学WEB后端01-安装Express+Node.js框架完成Hello World!
  • 从C语言到C++:C++入门知识(1)
  • 服务器(Windows系统)自建filebrowser网盘服务器超详细教程
  • 扩展欧几里得
  • MySQL 事务介绍 (事务篇 一)
  • nvm nodejs的版本管理工具
  • terraform简单的开始-vpc cvm创建
  • 【MySQL】开启 canal同步MySQL增量数据到ES
  • 密码学概论
  • 渗透测试中的前端调试(一)
  • SPA项目之登录注册--请求问题(POSTGET)以及跨域问题
  • Spring Cloud Alibaba Gateway全局token过滤、局部过滤访问时间超过50ms日志提示
  • 运算符 - Go语言从入门到实战
  • jupyterlab开发环境最佳构建方式
  • Qt_C++读写NFC标签Ntag支持windows国产linux操作系统
  • Web开发-基础知识扫盲
  • SpringMVC 学习(四)RestFul 风格
  • 消息中间件相关知识
  • JackJson多态
  • 孟晚舟最新发声!华为吹响人工智能的号角,发布“全面智能化”战略部署
  • open62541开发:添加sqlite3 历史数据库
  • 美国零售电商平台Target,值得入驻吗?如何入驻?
  • docker freeswitch mysql驱动相关