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

vscode远程调试PHP代码

目录

一、准备工作

二、ssh连接和xdebug配置

1.ssh连接

 2.xdebug配置

三、xdebug调试,访问


一、准备工作

1.安装vscode里面的两个扩展

2.安装对应PHP版本的xdebug

去xdebug官方,复制自己的phpinfo源码到方框里,再点击Analyse

Xdebug: Support — Tailored Installation Instructions

分析完成后,会有具体步骤教你如何安装和编译xdebug

注意这个路径/etc/php/8.1/fpm/conf.d/20-xdebug.ini,我是有这个路径的,根据PHP版本或系统可能不一样,这应该是xdebug的配置文件,但是我在原本的php.ini中也同样配置了xdebug

所以我都配置了,没试过只配置一个

二、ssh连接和xdebug配置

1.ssh连接

安装好上述的模块后,打开vscode,点击左下角的><按钮,然后选择Connect to Host

然后好像还要输入ssh root@要连接的ip ,具体没截图有点忘了

可以去看看其他博主的博客

连接成功后,打开你的项目文件夹

同样去安装一次xdebug扩展

安装好后点击运行与调试,创建launch.json文件,创建后会有内容,注释掉括号里面的内容

添加如下内容,端口号可以自行修改

"version": "0.2.0","configurations": [{"name": "Debug current script in console","type": "php","request": "launch","program": "${file}","cwd": "${fileDirname}","externalConsole": false,"port": 9004},{"name": "Listen for Xdebug","type": "php","request": "launch","port": 9004}

 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=9004
xdebug.start_with_request=yes
xdebug.remote_log=/var/log/xdebug.log

然后进入你下载PHP时自带的php.ini,我的路径在/etc/php/8.1/fpm/php.ini

一样在最后面加入上面的内容

重启php-fpm服务和web服务

三、xdebug调试,访问

最后在项目代码中打上断点,注意不是哪里都可以打断点

打上断点后点击左上开始调试

浏览器访问后,回到vscode,成功进入断点,接下来就可以调试了

相关文章:

vscode远程调试PHP代码

目录 一、准备工作 二、ssh连接和xdebug配置 1.ssh连接 2.xdebug配置 三、xdebug调试&#xff0c;访问 一、准备工作 1.安装vscode里面的两个扩展 2.安装对应PHP版本的xdebug 去xdebug官方&#xff0c;复制自己的phpinfo源码到方框里&#xff0c;再点击Analyse Xdebug: …...

flink1.17 实现 udf scalarFunctoin get_json_object 支持 非标准化json

特色 相比官方的json_value,该函数支持非标准化json,比如v是个object,但是非标准json会外套一层引号,内部有反引号. eg: {"kkkk2": "{\"kkkk1\":\"vvvvvvv\"}" } 支持value为 100L 这种java格式的bigint. {"k":999L…...

基于VUE3+Layui从头搭建通用后台管理系统(前端篇)九:自定义组件封装下

一、本章内容 续上一张,本章实现一些自定义组件的封装,包括文件上传组件封装、级联选择组件封装、富文本组件封装等。 1. 详细课程地址: 待发布 2. 源码下载地址: 待发布 二、界面预览 三、开发视频 基于VUE3+Layui从头搭建通用后台管...

设计模式详解-装饰器模式

类型&#xff1a;结构型模式 实现原理&#xff1a;装饰器模式通过将对象包装在装饰器类中&#xff0c;并在保持类方法签名完整性的前提下&#xff0c;提供额外功能 作用&#xff1a;动态地给一个对象添加一些额外的职责。增加功能方面&#xff0c;装饰器模式比生成子类更灵活…...

Android5:活动生命周期

创建项目Stopwatch activity_main.xml <?xml version"1.0" encoding"utf-8"?> <LinearLayoutxmlns:android"http://schemas.android.com/apk/res/android"xmlns:tools"http://schemas.android.com/tools"android:layout_w…...

第2章 数据结构和算法概述

2.3线性结构和非线性结构 数据结构包括: 线性结构和非线性结构 2.3.1线性结构 线性结构作为最常用的数据结构&#xff0c;其特点是数据元素之间存在一对一的线性关系线性结构有两种不同的存储结构&#xff0c;即顺序存储结构(数组)和链式存储结构(链表)。顺序存储的线性表称…...

WPF国际化的实现方法(WpfExtensions.Xaml)

https://blog.csdn.net/eyupaopao/article/details/120090431 resx资源文件实现 resx资源文件&#xff0c;实现的过程比第一种复杂&#xff0c;但resx文件本身编辑比较简单&#xff0c;维护起来比较方便。需要用到的框架&#xff1a;WpfExtensions.Xaml 为每种语言添加.resx资…...

【Linux】—— 进程程序替换

目录 序言 &#xff08;一&#xff09;替换原理 1、进程角度——见见猪跑 1️⃣ 认识 execl 函数 2、程序角度——看图理解 &#xff08;二&#xff09;替换函数 1、命名理解 2、函数理解 1️⃣execlp 2️⃣execv 3️⃣execvp 4️⃣execle 5️⃣execve 6️⃣execve…...

idea创建javaweb项目,jboss下没有web application

看看下图这个地方有没有web application...

广东灯具3D扫描抄数建模服务3D测绘出图纸三维逆向设计-CASAIM

灯具三维逆向建模是一种将实际物体转换为数字模型的过程。通过逆向工程技术&#xff0c;可以将现有的灯具进行3D扫描&#xff0c;然后利用专业的逆向设计软件将其转换为准确的三维模型。 以下是CASAIM实施灯具三维逆向建模的一般步骤图&#xff1a; 1. 扫描&#xff1a;三维扫…...

Nginx反向代理-负载均衡、webshell实践

目录 1.nginx反向代理-负载均衡 1&#xff09;搭建web项目 2&#xff09;修改 nginx.conf的配置 2.webshell 实践 1&#xff09;异或操作绕过 2&#xff09;取反绕过 3&#xff09;php语法绕过 1.nginx反向代理-负载均衡 1&#xff09;搭建web项目 首先通过SpringBoo…...

第六阶|见道明心的笔墨(上)从书法之美到生活之美——林曦老师的线上直播书法课

如果你有需要&#xff0c;可以找我的&#xff0c;我这边有老师的所有课程 如果你有需要&#xff0c;可以找我的&#xff0c;我这边有老师的所有课程...

nbcio-boot从3.0升级到3.1的出现用户管理与数据字典bug

升级后出现 系统管理里的用户管理出现下面问题 2023-08-17 09:44:38.902 [http-nio-8080-exec-4] [1;31mERROR[0;39m [36mo.jeecg.common.exception.JeecgBootExceptionHandler:69[0;39m - java.lang.String cannot be cast to java.lang.Long java.lang.ClassCastException:…...

Curson 编辑器

Curson 汉化与vacode一样 Curson 自带chat功能 1、快捷键ctrlk(代码中编辑) 2、快捷键ctrll 右侧打开窗口...

Shell编程学习之函数的应用

Shell编程中的函数&#xff1a;伪代码表示&#xff1a; function 函数名(){函数体}注意事项&#xff1a; 1.函数无参数&#xff1b; 2.函数无返回值类型&#xff1b; 3.function可以不写&#xff1b; 4.函数不被调用&#xff0c;就不会执行&#xff1b; 5.函数名不能使用…...

Fork/Join框架

是什么 Fork/Join框架是Java 7提供的一个用于并行执行任务的框架&#xff0c;是一个把大任务分割成若干个小任务&#xff0c;最终汇总每个小任务结果后得到大任务结果的框架。 Fork: 把一个大任务切分为若干子任务并行的执行 Join: 合并这些子任务的执行结果&#xff0c;最后…...

LeetCode_字符串_中等_468.验证 IP 地址

目录 1.题目2.思路3.代码实现&#xff08;Java&#xff09; 1.题目 给定一个字符串 queryIP。如果是有效的 IPv4 地址&#xff0c;返回 “IPv4” &#xff1b;如果是有效的 IPv6 地址&#xff0c;返回 “IPv6” &#xff1b;如果不是上述类型的 IP 地址&#xff0c;返回 “Nei…...

ABAP Der Open SQL command is too big.

ABAP Der Open SQL command is too big. DBSQL_STMNT_TOO_LARGE CX_SY_OPEN_SQL_DB 应该是选择条件中 维护的条件值条数太多了...

QChart类用来 管理 图表的:数据序列(series)、图例(legend)和坐标轴(axis)

QChart类用来 管理 图表的&#xff1a;数据序列&#xff08;series&#xff09;、图例&#xff08;legend&#xff09;和坐标轴&#xff08;axis&#xff09; 1、数据序列类 继承关系 2、坐标轴类 的继承关系 3、图例类 什么是图例&#xff1f; 图例&#xff1a;是集中于地图…...

Servlet+JDBC实战开发书店项目讲解第10篇:在线客服功能实现

在线客服功能实现 实现思路 要实现在线客服功能&#xff0c;您可以考虑以下步骤&#xff1a; 创建一个用于存储客户消息和回复的数据库表。您可以使用JDBC连接到数据库&#xff0c;并使用SQL语句创建表格。 在您的Servlet中&#xff0c;创建一个用于处理客户消息和回复的POS…...

JPlag:源代码相似性检测与抄袭识别的核心技术解析

JPlag&#xff1a;源代码相似性检测与抄袭识别的核心技术解析 【免费下载链接】JPlag State-of-the-Art Source Code Plagiarism & Collusion Detection. Check for plagiarism in a set of programs. 项目地址: https://gitcode.com/gh_mirrors/jp/JPlag JPlag是一…...

软考高级信息系统项目管理师备考笔记-第14章项目沟通管理

第14章项目沟通管理备考知识点及历年真题 一、历年真题分布 2023年5月 选择题3分 案例6分 2023年11月 选择题3分 案例5分第一批、案例10分第二批 2024年5月 选择题3分 案例16分第一批 2025年5月 选择题2分 案例4分第一批、案例9分第二批 二、备考学习笔记 14.1 …...

为初创团队搭建统一的大模型api网关以控制开发成本

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 为初创团队搭建统一的大模型API网关以控制开发成本 对于初创技术团队而言&#xff0c;快速验证产品想法、迭代功能是生存的关键。在…...

Java反编译终极指南:JD-GUI从入门到精通完整教程

Java反编译终极指南&#xff1a;JD-GUI从入门到精通完整教程 【免费下载链接】jd-gui A standalone Java Decompiler GUI 项目地址: https://gitcode.com/gh_mirrors/jd/jd-gui Java反编译是每个Java开发者必备的核心技能&#xff0c;而JD-GUI正是这一领域的终极利器。作…...

基于Javaweb的医院在线挂号系统(10007)

有需要的同学&#xff0c;源代码和配套文档领取&#xff0c;加文章最下方的名片哦 一、项目演示 项目演示视频 二、资料介绍 完整源代码&#xff08;前后端源代码SQL脚本&#xff09;配套文档&#xff08;LWPPT开题报告/任务书&#xff09;远程调试控屏包运行一键启动项目&…...

学习如何用CC-Switch + Claude Code 接入 DeepSeek-V4-Pro

1.概述 1.1.关键词 Claude Code&#xff1a;Anthropic 出品的 AI 编程命令行工具。在终端里让 AI 帮你写代码、改 Bug、分析项目。 CC-Switch&#xff1a;开源的图形化配置管理工具。一键切换 Claude Code 背后使用的模型&#xff0c;不用手动改配置文件。 1.2.目的 使用C…...

避开这些坑!在Colab上运行AlphaFold2时,参数、路径和依赖库的常见错误排查指南

避开这些坑&#xff01;在Colab上运行AlphaFold2时&#xff0c;参数、路径和依赖库的常见错误排查指南 在Google Colab上运行AlphaFold2看似简单&#xff0c;但实际操作中90%的用户都会遇到各种"诡异"报错。上周一位结构生物学博士向我吐槽&#xff1a;"明明按照…...

Apple Mail自动化增强:JXA脚本与快捷指令提升邮件处理效率

1. 项目概述&#xff1a;一个为Apple Mail打造的现代化邮件客户端如果你和我一样&#xff0c;日常工作高度依赖邮件&#xff0c;并且是macOS生态的深度用户&#xff0c;那么Apple Mail&#xff08;邮件.app&#xff09;大概率是你的主力工具。它简洁、与系统深度集成、iCloud同…...

定制软件开发公司实施方

定制软件开发&#xff0c;为何80%的企业选错实施方&#xff1f;这3个坑你踩过吗&#xff1f;“我们项目预算超了50%&#xff0c;还没上线……”“系统动不动就卡死&#xff0c;用户天天投诉&#xff0c;售后根本找不到人&#xff01;”“当时说好的功能&#xff0c;现在告诉我实…...

无国界技术创业:构建全球化产品支持与远程协作体系

1. 从“车库”到“云端”&#xff1a;无国界创业的底层逻辑变迁 十年前&#xff0c;如果你在硅谷创立一家芯片设计工具&#xff08;EDA&#xff09;或嵌入式软件公司&#xff0c;头两年的客户拜访路线图大概就是101号公路沿线。工程师可以早上开车去圣何塞的客户办公室&#xf…...