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

VScode的PHP远程调试模式Xdebug

目录

第一步、安装VScode中相应插件

remote-ssh的原理

 ssh插件:

PHP相关插件:

 第二步、安装对应PHP版本的xdebug

查看PHP具体配置信息的phpinfo页面

1、首先,打开php编辑器,新建一个php文件,例如:index.php

2、在index.php中,输入代码:phpinfo();

 3、浏览器运行index.php页面,此时打印出了该php服务器上各个配置信息、组件信息的phpinfo页面。

                        ​​​​​​​         点击最下面的按钮

第三步、修改launch.json文件

第四步、修改php.ini文件

php.ini文件路径: 

第五步、设置断点,开始调试

在test文件夹中新建一个index.php文件,配置如下 


需要的配置环境:

VScode    PHP

官方文档:使用 SSH 和 Visual Studio 代码在远程计算机上进行开发

第一步、安装VScode中相应插件

remote-ssh的原理

        在Visual Studio代码远程- SSH扩展允许你打开任何远程计算机,虚拟机或容器上的远程文件夹与正在运行的SSH服务器,并充分利用VS代码的功能集。一旦连接到服务器,您就可以与远程文件系统上任何位置的文件和文件夹进行交互。

        由于扩展直接在远程计算机上运行命令和其他扩展,因此无需在本地计算机上使用源代码即可获得这些好处。

SSH架构

 ssh插件:

PHP相关插件:

如果你之前安装过PHP相关软件,在远程连接后会提示你该插件在此扩展在此工作区中被禁用,因为其被定义为在远程扩展主机中运行。请在'SSH:xxx.xxx.xxx.xxx'中安装扩展以进行启用。

因此,我们需要在当前环境下再次安装所需插件

 第二步、安装对应PHP版本的xdebug

查看PHP具体配置信息的phpinfo页面

1、首先,打开php编辑器,新建一个php文件,例如:index.php

2、在index.php中,输入代码:phpinfo();

 3、浏览器运行index.php页面,此时打印出了该php服务器上各个配置信息、组件信息的phpinfo页面。

在xdebug官网,将自己phpinfo的源代码复制进去 

xdebug官网:Xdebug: Support — Tailored Installation Instructions

 点击最下面的按钮

第三步、修改launch.json文件

可以先打开一个文件,之后点击运行和调试,在点击设置按钮就会转到launch.json文件

加上如下配置

 注意修改端口号

{

    // 使用 IntelliSense 了解相关属性。

    // 悬停以查看现有属性的描述。

    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387

    "version": "0.2.0",

    "configurations": [

        {

            "name": "Listen for Xdebug",

            "type": "php",

            "request": "launch",

            "port": 9001

        },

        {

            "name": "Launch currently open script",

            "type": "php",

            "request": "launch",

            "program": "${file}",

            "cwd": "${fileDirname}",

            "port": 0,

            "runtimeArgs": [

                "-dxdebug.start_with_request=yes"

            ],

            "env": {

                "XDEBUG_MODE": "debug,develop",

                "XDEBUG_CONFIG": "client_port=${port}"

            }

        },

        {

            "name": "Launch Built-in web server",

            "type": "php",

            "request": "launch",

            "runtimeArgs": [

                "-dxdebug.mode=debug",

                "-dxdebug.start_with_request=yes",

                "-S",

                "localhost:0"

            ],

            "program": "",

            "cwd": "${workspaceRoot}",

            "port": 9001,

            "serverReadyAction": {

                "pattern": "Development Server \\(http://localhost:([0-9]+)\\) started",

                "uriFormat": "http://localhost:%s",

                "action": "openExternally"

            }

        }

    ]

}

第四步、修改php.ini文件

php.ini文件路径: 

以本人为例:

本人将php安装在D:\software\computing\NSP\phpstudy路径下

php.ini文件夹则在D:\software\computing\NSP\phpstudy\phpstudy_pro\Extensions\php\php7.3.4nts路径下

注意:你要寻找对于php版本的phpx.x.xnts文件夹
 

第五步、设置断点,开始调试

在test文件夹中新建一个index.php文件,配置如下 

在php中打开Apache

 

 再次刷新即可

 

相关文章:

VScode的PHP远程调试模式Xdebug

目录 第一步、安装VScode中相应插件 remote-ssh的原理 ssh插件: PHP相关插件: 第二步、安装对应PHP版本的xdebug 查看PHP具体配置信息的phpinfo页面 1、首先,打开php编辑器,新建一个php文件,例如:inde…...

HTML5-2-链接

HTML使用标签 <a>来设置超文本链接。 超链接可以是一个字&#xff0c;一个词&#xff0c;或者一组词&#xff0c;也可以是一幅图像&#xff0c;您可以点击这些内容来跳转到新的文档或者当前文档中的某个部分。 默认情况下&#xff0c;链接将以以下形式出现在浏览器中&am…...

Java--常用jar命令

jar常用指令 jar命令参数&#xff1a; jar命令格式&#xff1a;jar {c t x u f }[ v m e 0 M i ][-C 目录]文件名... 其中{ctxu}这四个参数必须选选其一。[v f m e 0 M i ]是可选参数&#xff0c;文件名也是必须的。 -c 创建一个jar包 -t 显示jar中的内容列表 -x 解压jar包 …...

微服务中间件--多级缓存

多级缓存 多级缓存a.JVM进程缓存1) Caffeine2) 案例 b.Lua语法1) 变量和循环2) 条件控制、函数 c.多级缓存1) 安装OpenResty2) 请求参数处理3) 查询Tomcat4) Redis缓存预热5) 查询Redis缓存6) Nginx本地缓存 d.缓存同步1) 数据同步策略2) 安装Canal2.a) 开启MySQL主从2.b) 安装…...

clickhouse系列3:clickhouse分析英国房产价格数据

1.准备数据集 该数据集包含有关英格兰和威尔士自1995年起到2023年的房地产价格的数据,超过2800万条记录,未压缩形式的数据集大小超过4GB,在ClickHouse中需要约306MB。 2.clickhouse中建表 CREATE TABLE uk_price_paid (price UInt32,...

2023京东口腔护理赛道行业数据分析(京东销售数据分析)

近年来&#xff0c;口腔护理逐渐成为年轻人重视的健康领域&#xff0c;从口腔护理整体市场来看&#xff0c;牙膏和牙刷等基础口腔护理产品仍占据主导地位。不过&#xff0c;随着口腔护理市场逐步朝向精致化、专业化、多元化等方向发展&#xff0c;不少新兴口腔护理产品受到消费…...

安服面试 --- 01

1、常用渗透工具 burp、nmap、sqlmap、蚁剑、御剑、冰蝎、cobalt strike等 2、渗透测试中&#xff0c;拿到目标公司站点&#xff0c;接下来应该怎么做&#xff1f; &#xff08;1&#xff09;信息收集&#xff1a;收集目标公司的相关信息。包括域名、ip地址、子域名、开放端…...

ExpressLRS开源之RC链路性能测试

ExpressLRS开源之RC链路性能测试 1. 源由2. 分析3. 测试方案4. 测试设计4.1 校准测试4.2 实验室测试4.3 拉距测试4.4 遮挡测试 5. 总结6. 参考资料 1. 源由 基于ExpressLRS开源基本调试验证方法&#xff0c;对RC链路性能进行简单的性能测试。 修改设计总能够满足合理的需求&a…...

el-form表单el-form-item prop一次验证两个值

1.表单添加两个框&#xff0c;prop写上 <el-form :model"ruleForm" :rules"rules" ref"ruleForm" label-width"100px" > <el-form-item type"type" label"时间" prop"dateSectOne"><di…...

HTTP 代理原理及 Python 简单实现

HTTP 代理是一种网络代理服务器(Proxy Server),它能够作为客户端与 HTTP 服务器之间的中介,它的工作原理是: 当客户端向 HTTP 代理发送 HTTP 请求时,HTTP 代理会收到请求。 HTTP 代理会将请求转发给目标 HTTP 服务器。 目标 HTTP 服务器处理请求并生成响应。 HTTP 代理将…...

数据结构--队列与循环队列

队列 队列是什么&#xff0c;先联想一下队&#xff0c;排队先来的人排前面先出&#xff0c;后来的人排后面后出&#xff1b;队列的性质也一样&#xff0c;先进队列的数据先出&#xff0c;后进队列的后出&#xff1b;就像图一的样子&#xff1a; 图1 如图1&#xff0c;1号元素是…...

八路参考文献:[八一新书]许少辉.乡村振兴战略下传统村落文化旅游设计[M]北京:中国建筑工业出版社,2022.

八路参考文献&#xff1a;&#xff3b;八一新书&#xff3d;许少辉&#xff0e;乡村振兴战略下传统村落文化旅游设计&#xff3b;&#xff2d;&#xff3d;北京&#xff1a;中国建筑工业出版社&#xff0c;&#xff12;&#xff10;&#xff12;&#xff12;&#xff0e;...

版本控制 Git工具的使用

版本控制的概念&#xff1a; 版本控制&#xff08;Revision control&#xff09;是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史&#xff0c;方便查看更改历史记录&#xff0c;备份以便恢复以前的版本的软件工程技术。简单来说就是用于管理多人协同开发…...

GNS3 在 Linux 上的安装指南

文章目录 GNS3 在 Linux 上的安装指南1. 基于 Ubuntu 的发行版安装 GNS32. 基于 Debian 的安装3. 基于 ArchLinux 的安装4. 从 Pypi 安装 GNS35. 启动 GNS3 服务端GNS3 在 Linux 上的安装指南 大家好,今天我们来聊聊如何在 Linux 上安装 GNS3。GNS3 是一个非常受欢迎的网络模…...

Mybatis中 list.size() = 1 但显示 All elements are null

一、Bug展示 二、原因分析 2.1.情形一&#xff1a;Mybatis的XML中返回类型映射错误 <select id"selectByDesc" parameterType"com.task.bean.OrderInfo"resultType"com.task.bean.OrderInfo">select MER_ID,SETTLE_DATE,ICE_NAME,ORDER_S…...

Soul的社交元宇宙之路,还有多远?

在元宇宙概念爆火的当下&#xff0c;以互联网为依托的虚拟社交逐步为用户承载起其空缺的精神交流与寄托&#xff0c;而在这其中&#xff0c;以“跟随灵魂找到你”为Slogan&#xff0c;主打年轻人社交元宇宙平台的APP--Soul则在这条赛道上凭借着独特的风格&#xff0c;逐步突出重…...

如何解决Memcached缓存击穿和雪崩问题

原文 Memcached是一种快速、高性能的分布式内存对象缓存系统&#xff0c;广泛应用于Web应用的缓存中。然而&#xff0c;Memcached也存在一些常见的问题&#xff0c;如缓存击穿和缓存雪崩。本文将介绍什么是缓存击穿和缓存雪崩&#xff0c;并提供一些解决这些问题的方法&#x…...

uniapp 开发之仿抖音,上下滑动切换视频、点击小爱心效果

效果图&#xff1a; 功能描述&#xff1a; 上下滑动视频&#xff0c;双击暂停&#xff0c;然后第一个视频再往上滑显示”已经滑到顶了“ 开始代码&#xff1a; 首先视频接口使用的公开的视频测试接口 开放API-2.0 官网展示 Swagger UI 接口文档 一…...

【C++设计模式】依赖倒转原则

2023年8月30日&#xff0c;周三上午 目录 概述含义举个简单的例子传统做法使用依赖倒转原则代码说明再举一个具体的例子以生活为例 概述 依赖倒转原则(Dependency Inversion Principle,DIP)是面向对象设计中的一个基本原则。 含义 高层模块不应该依赖低层模块,两者都应该依…...

浙江首例!金华银行基于完全国产自研数据库构建新一代核心系统

6 月 12 日&#xff0c;金华银行举行“星辉工程”核心项目群上线发布会&#xff0c;新一代核心系统部署在国产分布式数据库 OceanBase 上&#xff0c;实现系统的高可用、高性能、国产升级。据悉&#xff0c;这是浙江省首例基于完全国产自研数据库落地的银行核心系统。 金华银行…...

CircuitPython硬件交互实战:引脚命名、模块管理与内存优化

1. 项目概述&#xff1a;CircuitPython硬件交互的基石 如果你刚开始接触CircuitPython&#xff0c;或者从Arduino转过来&#xff0c;可能会对如何控制板子上的某个引脚感到困惑。板子上明明印着“A0”、“D13”&#xff0c;但在代码里到底该怎么写&#xff1f; board.A0 和 …...

Qwen2.5-14B实战指南:3个关键步骤突破本地大模型部署瓶颈

Qwen2.5-14B实战指南&#xff1a;3个关键步骤突破本地大模型部署瓶颈 【免费下载链接】Qwen2.5-14B 项目地址: https://ai.gitcode.com/hf_mirrors/ai-gitcode/Qwen2.5-14B 当开发者面对复杂的代码生成任务或技术文档分析需求时&#xff0c;往往会受限于云端API的延迟和…...

像素风格技能图标自动生成:Python+Pillow实现模板化设计

1. 项目概述与核心价值最近在和一些做独立开发者和内容创作者的朋友聊天时&#xff0c;发现一个普遍痛点&#xff1a;大家手头都有不少好想法&#xff0c;但一到具体执行&#xff0c;尤其是需要制作宣传素材时&#xff0c;就卡住了。比如&#xff0c;想给自己的新App做个宣传图…...

基于Stellar的智能体经济安全与效率优化框架解析

1. 项目概述&#xff1a;一个面向智能体经济的安全与效率优化框架最近在探索智能体&#xff08;Agent&#xff09;应用生态时&#xff0c;我遇到了一个普遍存在的痛点&#xff1a;如何在一个去中心化、多智能体协作的网络中&#xff0c;既保证交互的安全与可信&#xff0c;又能…...

基于Node.js的Markdown文档自动化转换工具:从原理到CI/CD集成实战

1. 项目概述&#xff1a;一个被低估的文档转换利器如果你和我一样&#xff0c;日常工作中需要处理大量不同格式的文档&#xff0c;比如把Markdown写的技术文档转成Word给产品经理看&#xff0c;或者把项目README转成PDF存档&#xff0c;那你肯定也经历过格式错乱、样式丢失的烦…...

DashClaw:模块化命令行工具的设计哲学与实战应用

1. 项目概述&#xff1a;一个为开发者打造的“瑞士军刀”式命令行工具最近在折腾一个自动化部署脚本时&#xff0c;遇到了一个老生常谈的问题&#xff1a;我需要从一堆杂乱的日志文件里&#xff0c;快速提取出特定时间段的错误信息&#xff0c;同时还要把这些信息按照严重程度分…...

CursorTouch/Web-Use:用JavaScript在桌面端模拟移动端触摸交互

1. 项目概述&#xff1a;当光标变成你的手指你有没有想过&#xff0c;在电脑上浏览网页时&#xff0c;如果能像在手机上那样&#xff0c;直接用手指滑动、点击、缩放&#xff0c;体验会不会更流畅&#xff1f;尤其是在处理一些需要精细操作或快速浏览长文档的场景时&#xff0c…...

开源监控自动化平台openclaw-lighthouse:从告警到自愈的智能运维实践

1. 项目概述&#xff1a;一个开源的“灯塔”式监控与自动化平台最近在梳理团队内部的监控和自动化工具链时&#xff0c;发现了一个挺有意思的开源项目&#xff0c;叫openclaw-lighthouse。这个名字本身就很有画面感&#xff0c;“openclaw”是开放的爪子&#xff0c;象征着抓取…...

记一次在双 RTX 3090 工作站上部署 vLLM 与 Qwen3.6-35B-AWQ 的实战记录

记一次在双 RTX 3090 工作站上部署 vLLM 与 Qwen3.6-35B-AWQ 的实战记录 1. 升级目的 最近需要本地部署大模型推理服务&#xff0c;目标是运行 Qwen3.6-35B 的 INT4 量化版本&#xff08;AWQ 格式&#xff09;&#xff0c;并使用高性能推理引擎 vLLM 提供服务。由于模型采用 …...

4.AI大模型-幻觉、记忆、参数-大模型底层运行机制

内容参考于&#xff1a;图灵AI大模型全栈 幻觉&#xff1a; 大模型的幻觉主要有两种&#xff0c;一种是回答的答案和问的问题不搭边&#xff0c;就是说回答的答案是乱编的&#xff0c;是没有真实性的&#xff0c;另一种是给了AI正确的资料&#xff0c;但是AI并没有根据我们给的…...