有时候我们在使用php和nginx进行开发的时候,会出现这样的情况,明明扩展已经安装,但是就是无法调试成功。这个时候我们就要耐心去分析问题产生的原因。...,但是如果填写9000这个端口,可能就会导致你的php无法调试,因为9000端口会被nginx占用做代理。...这里比如调试的问题,我们首先就需要明白调试的原理是什么,它本质上是另起一个进程去监听我们的调试,它首先是php的一个扩展,php的好多功能都是通过扩展来实现的,比如常用的许多图形库,加密算法等。...当激活扩展后,php就会和扩展交互,这里的xdebug就是通过获取到的php运行信息来进行调试的。...总结 以上所述是小编给大家介绍的解决windows上php xdebug 无法调试的问题,希望对大家有所帮助,也非常感谢大家对ZaLou.Cn网站的支持!
另外,xdebug不是伴随着php的,要使用它,需要我们自行安装,可费劲er了。当然我们可以直接到docker hub上找现成的环境。 安装完xdebug你以为就结束了吗,没有!...我们还需要对xdeubg进行配置,网上大多数的教程都是说在php.ini里配置,但是我使用的这个docker环境,xdebug是有一个单独的配置文件的 我就直接在这里面配置了(其实docker环境已经配置的差不多了...xdebug xdebug.remote_enable = 1 经过上面的描述,你应该大概了解到其实php的调试是通过客户端、服务端经过DBGp协议通信来协调实现的 这也是为什么php支持远程调试的原因...,也没有关系,照样可以连接到我指定的ip地址上,这不就出大问题了吗 利用条件 xdebug.remote_connect_back = 1 //开启回连 并且此选项开启时,xdebug会忽略xdebug.remote_host...直接把客户端ip当作回连ip,也就是谁访问它,谁就是回连ip xdebug.remote_enable = 1 //开启xdebug xdebug.remote_log = /tmp/
在《安装Genymotion模拟器运行Android studio的工程》一文中,我们实践了在Genymotion上运行Android studio的工程,在实际使用中可能会遇到下面这些问题: 假设Android...studio和Genymotion都已经打开,Genymotion上的虚拟设备也已经启动成功; 1.在Android studio中点击”Run app”按钮后,虚拟设备不会出现在弹出窗口的列表中:...遇到这些问题的时候,请按照如下步骤修改设置: 1.在Genymotion页面上点击”Settings”,在弹出的窗口再点击”ADB”,如下图: ?...3.关闭虚拟设备后重新启动该设备,退出Android studio之后重新打开; 4.这时候去点击”Run app”按钮,选择设备的窗口中可以选择虚拟设备,点击”Attach debugger to Android...progress”按钮可以选择虚拟设备中的app进程,在控制台执行”adb shell”也可以正常连接;
/configure make && make install zend_extension="/usr/local/php/modules/xdebug.so" Docker安装 以下为php dockerfile...当浏览器发送一个带 XDEBUG_SESSION_START 的参数的请求到服务器时,服务器接受后将其转到后端的php处理,如果php开启了XDebug模块,则会将debug信息转发到客户端IP的IDE...在跟踪或分析脚本时,您通常希望关闭此选项,因为PHP生成的oparray将增加大约三分之一的大小,从而减慢脚本速度。无法使用ini_set()在脚本中设置此设置,但只能在php.ini中设置。...自己找了,Xdebug将尝试连接到发出HTTP请求的客户端。...PHP XDEBUG 部分人在本机装了Docker,容器中运行这PHP,这个时候该如何进行DEBUG呢?
概述 最近公司接到几个商城项目,调查了一下运行环境,普遍都是在本地启服务。 我个人不是太喜欢,准备换一种方式。 调整开发环境。...具体内容 Ⅰ、服务端 一、安装XAMPP服务(Centos7) 二、安装Xdebug(Centos7) 四、安装PHP服务(Docker) Ⅱ、客户端 一、安装VSCode 二、安装Remote - SSH...config用默认的就行 ?...Ⅲ、宝塔端环境(推荐) 一、配置服务端xdebug 纯净系统下安装宝塔 安装完毕后启动 安装 PHP安装扩展 ?...修改配置文件 重载配置,重启 二、客户端前期同上 三、超时设置 编辑 修改 时间为 0 四、服务端搭建完成时测试 新建网站 编写文件index.php ?
在建立PHP开发调试环境时,经常会遇到xdebug无法成功安装的问题,其实主要原因有两点: 1. xdebug版本和php版本不匹配 2.xdebug和 zend不能同时运行,需要在php.ini中禁掉...xdebug信息中有关函数和错误信息的超链接将直接链接到PHP帮助手册中的函数页面。...,Xdebug就将尝试连接到调试客户端。...jit只有当错误发生时,Xdebug才会尝试连接到调试客户端。...你能选择的最大值是1023,你也可以设置参数值为-1,这样Xdebug将会自动选择1023。 此参数对通过远程调试功能发送给客户端的子节点的深度(译者注:深度是数据结构上的概念)没有任何影响。
Spin一个新的使用PHP支持正在运行Apache的Docker容器: $ docker run --rm -d -p 80:80 --name hello-fracker php:apache 创建一些虚拟...停止并移除容器: $ docker stop hello-fracker 架构 每个PHP请求或命令行调用都会触发与侦听器的TCP连接。...,fdout=0' PHP 扩展 PHP扩展是从Xdebug派生出来的的,因此安装过程完全相同,故障排除也是如此。...部署脚本 这个脚本应该与类Debian发行版开箱即用: $ scripts/deploy.sh [ []] 它将PHP模块配置为连接到指定端口的指定主机(...;' 最后,安装PHP扩展: make install; 将zend_extension=xdebug.so放在由PHP解析的INI文件中,以及任何其他自定义设置中。
虽然可以在独立的终端窗口中连接到虚拟机执行这些测试和调试操作,但有的时候,在代码编辑器中集成的单元测试、代码调试等功能确实很好用,体验更好,也更流畅,尤其是代码调试,只能在图形界面中完成。...& Frameworks -> PHP 界面中点击 CLI Interpreter(默认是本地 php.exe 对应的路径)输入框右侧的按钮(下图红框内),然后选择「From Docker, Vagrant...在此之前,需要在 WSL 虚拟机中配置启用 Xdebug,使用 apt install php 安装的 PHP 默认已经安装了 Xdebug 扩展,我们可以通过 php --ini 命令查看对应的配置文件...有了以上的配置经验,想必你可以很轻松地实现在 PhpStorm 中基于 WSL PHP CLI 进行单元测试,以及在本地 PhpStorm 中对运行在 WSL Docker 容器内的 PHP Web 应用进行远程代码调试...WSL 虚拟机中基于 Docker Compose 编排和启动 PHP Web 项目运行环境(LNMP,第二篇),最后,我们还学习了如何在本地 PhpStorm 中集成 WSL 虚拟机中的 PHP CLI
使用 Docker 搭建 PHP 开发环境(Mac、Docker、Nginx、PHP-FPM、XDebug、PHPStorm、VSCode)。.../yourname/Workspace/etc/php $ docker rm -f tmp-my-php-fpm 4、修改 nginx、php-fpm、xdebug 的配置文件 修改 nginx 配置文件...修改 xdebug 的配置文件,/Users/yourname/Workspace/etc/php/conf.d/docker-php-ext-xdebug.ini,加入如下内容 xdebug.remote_enable...还记得上面提到的 nginx 中有个配置填写的 “php-fpm-container” 吗?实际上就是在这里指定的,连接两个容器,并给 php-fpm 容器起了个别名,配置中通过别名访问。...image.png image.png 结尾:实际上这次部署环境踩了不少坑,主要原因是网上的资料都比较陈旧,很多文章也没有后续的更新,或者方向和我不太一致,例如 hub 中直接就有 xdebug 的镜像
所以要解决的第一个问题就是如何在我现有运行的php环境基础上安装xdebug并让它运行成功。...由于我php环境的Dockerfile都是根据我自己项目的需求定制的,所以配置过程不表,总之,我安装完xdebug之后,遇到一个问题,因为之前有过心思要上线另外一个资源贩卖站点,那个站点需要配置支持swoole...如果你是docker环境的话,有过配置经验的话,你可能会有external_ips和php ide config等ENV常量的印象,我上次在docker上用xdebug调试,记得还是解决一个wordpress...等,phpstorm或者vscode)抓到你监听程序运行的全部行为,安装了xdebug服务扩展服务的容器就要告诉我(ide等,phpstorm或者vscode)连哪个地址,用哪个端口,方便调试的那些xdebug...要设置好文件的访问权限,即/api/uc.php文件的访问权限不然最终uc_server(即通常意义上的ucenter)通过curl方式请求discuz程序是请求不到的。
它具有记录每个函数调用和磁盘变量赋值的功能。 它包含一个分析器。 它提供了与PHPUnit一起使用的代码覆盖功能。 本文针对docker的环境下,进行xdebug的安装与简单调试。...环境 环境都是在docker上运行的,使用到了dnmp。 PHP版本:7.4.20。xdebug版本:3.1.1。 流程 要想使用docker下的PHP容器来调试。比如要经过下面的几个流程。...使用docker搭建一个PHP容器。 给PHP安装xdebug扩展。 配置xdebug信息。 配置PHPstorm即可。...按照PHP容器 这一步就省略,搭建可以根据自己的需要搭建,也可以使用演示环境中使用的docker环境。...如果你是自己搭建的PHP容器,也可以使用常规的编译方式安装xdebug扩展。需要注意xdebug与PHP的版本。xdebug官方是提供了一个检测工具,帮助我们如何选择xdebug的版本。
Xdebug是一个PHP的调试工具,支持在本地通过源码远程调试服务器上的PHP代码。...Xdebug调试PHP的主要流程为: 接收到debug的信号,一般为请求参数带有XDEBUG_SESSION_START 返回一个XDEBUG_SESSION的Cookie 服务器作为客户端,根据配置文件中的...xdebug.remote_host和xdebug.remote_port连接服务端(开发者的机器) 服务端收到请求,向客户端发送指令 开启Xdebug 于http://xdebug.org/download.php...//192.168.130.157:5555/index.php 假设我们知道他开启了Xdebug远程回连模式 我们在自己的vps上尝试 首先打开9000端口进行监听 root@ubuntu-512mb-sfo2...,就不再细说了 注意事项 存在蛇皮点,即有的时候看见phpinfo的 xdebug.remote_connect_back xdebug.remote_enable 关闭 未必就不能就行xdebug回连
先来说一下环境: Docker 18.09.2 Nginx 1.17.1 PHP 7.3.7 XDebug 2.7.2 PhpStorm 2019.1.3 VSCode 1.36.1 1、Docker的安装.../yourname/Workspace/etc/php $ docker rm -f tmp-my-php-fpm 复制代码 4、修改nginx、php-fpm、xdebug的配置文件 修改nginx配置文件...修改xdebug的配置文件,/Users/yourname/Workspace/etc/php/conf.d/docker-php-ext-xdebug.ini,加入如下内容 xdebug.remote_enable...还记得上面提到的nginx中有个配置填写的“php-fpm-container”吗?实际上就是在这里指定的,连接两个容器,并给php-fpm容器起了个别名,配置中通过别名访问。...结尾:实际上这次部署环境踩了不少坑,主要原因是网上的资料都比较陈旧,很多文章也没有后续的更新,或者方向和我不太一致,例如hub中直接就有xdebug的镜像,但是我还是想尽量用官方提供的镜像自己创建,为了避免踩坑
PHP-FPM 容器的配置 首先在 flarum-docker-env 里面 php-fpm 容器的 Dockerfile 里加上调用 Pecl 安装 XDebug 的指令: # add xdebug...xdebug 然后准备一段 XDebug 配置文件,容器内部对应 docker-php-ext-xdebug.ini,我们在宿主机创建这个文件,填充内容: zend_extension=/usr/local...=1 xdebug.remote_host=${XDEBUG_HOST} XDebug 的调试是 PHP 主动连接本地的 IDE 实现的,PHP 需要知道远程连接的 IDE 的 IP 地址,这里我设置了一个名为.../php-fpm/docker-php-ext-xdebug.ini:/usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini environment:...- XDEBUG_HOST=${XDEBUG_HOST:-host.docker.internal} 完整的修改参见 commit 提交的变动记录。
Xdebug 安装配置 如果你对 PHP 扩展安装还很陌生,请先阅读 各操作系统下 PHP 扩展安装的一般方法。...,我们使用 phpstrom 来调试,当 PHPSTROM 开启调试时,会启动一个端口号这个 xdebug 会连接到这个端口上。...新增一个: 给 Server 起一个名字 “demo”, 类型选择 “in place”: “in place”的意思是我们的项目代码并不在远程服务器上,而是在我们本地的一个目录安装的...helper 插件, 无法访问外国网站的同学可以点这里下载,xdebug ,并手动安装,不会手动安装,请参考这篇教程中有提到 手动安装chrome插件 添加好此插件后,在我们插件栏上就多了一个虫子一样的图片...如果配置一切无误的话,刷新当前页面,浏览器将会弹出,程序会暂停在你设置断点的那一行上: 至此这篇教程就结束了,至于Phpstorm 中更多 debug 代码的技巧就自己慢慢探索吧!
场景 LNMP 位于 macOS LNMP 位于 Docker LNMP 位于虚拟机中的 Docker php-xdebug 安装 # php也是通过brew安装的 $ brew info...php72-xdebug $ brew install php72-xdebug 配置 /usr/local/etc/php/7.2/conf.d/ext-xdebug.ini 其他系统请替换为实际的路径...[xdebug] # 必须使用绝对路径 zend_extension="/usr/local/opt/php71-xdebug/xdebug.so" xdebug.remote_enable=1 #xdebug.remote_host...-> Settings -> Languages&Frameworks -> PHP -> Debug ->Xdebug Debug port: 9010 三个选项全部勾选(必须与扩展中配置的端口一致...使用 设置断点 点击 电话 图标(run -> Start listening for PHP…) 浏览器打开网址,点击 xdebug helper -》debug ,自动跳转到 IDE 相关链接
://xdebug.org; 下载对应自己版本的插件; 如果有选择困难症的可以打开:https://xdebug.org/wizard.php; 然后再本地创建一个php文件 用来输出phpifno;...然后打开PHP配置文件 zend_extension=E:\web\PHPTutorial\php\php-7.2.1-nts\ext\php_xdebug-2.6.0-7.2-vc15-nts.dll...=req //可以设为req或jit,req表示脚本一开始运行就连接远程客户端,jit表示脚本出错时才连接远程客户端。...xdebug.remote_host=localhost //指定远程调试的主机名(安装phpstorm的主机ip) xdebug.remote_port=9001 //指定远程调试的端口号 xdebug.idekey...上面的配置在写入的时候将后面的注释删除掉,不然可能会有无法启动的问题 配置完毕之后重启服务器 打开phpinfo,搜索xdebug,看到以下信息就OK了! ? 接下来打开编辑器, ? 点击编辑 ?
下面看下如何配置 配置 这里我的PHP环境是基于docker的,非docker的也大同小异 修改php.ini [xdebug] zend_extension = xdebug.so xdebug.mode...=debug xdebug.client_host=host.docker.internal ;xdebug.discover_client_host=yes xdebug.client_port=9003...xdebug.start_with_request=yes 注意,你的php环境用的docker-compose.yml可能需要修改一下,允许容器内通过localhost访问宿主机(是可能,未验证!)...docker-php-fpm: image: php:1.1-work hostname: php-fpm extra_hosts: #允许容器内通过localhost访问宿主机...php容器内分别执行 cuiwei@weideMacBook-Pro ~ % telnet 127.0.0.1 9003 root@php-fpm:/var/www/html# telnet host.docker.internal
以下所有命令需要在命令行模式下laradock文件夹下运行 开启nginx docker-compose up -d nginx 停止nginx docker-compose stop nginx 停止所有正在运行的容器...,但不删除容器 docker-compose stop 停止,并删除正在运行的容器 docker-compose down 查看已存在或者正在运行的容器 docker-compose ps 进入nginx...-q` 删除docker-compose认为所有不使用的镜像 docker image prune 删除所有已存在的镜像 docker image prune --force --all或者docker...image prune -f -a 删除所有停止的容器 docker container prune 停止xDebug php-fpm/xdebug stop 打开xDebug php-fpm/xdebug...start 查看状态 php-fpm/xdebug status
PHP 安装配置Xdebug模块详解Xdebug是一个功能强大的PHP调试和分析工具。它为开发人员提供了许多有用的功能,包括代码调试、性能分析、代码覆盖率分析等。...php// ...xdebug_break();// ...?>使用调试器(如Visual Studio Code的PHP Debug插件)连接到你的PHP代码,并设置断点。...然后,你可以使用支持Xdebug调试的IDE(如Visual Studio Code)进行远程调试。首先,确保你的IDE已正确配置并连接到远程服务器。...**远程调试(Remote Debugging)**:Xdebug支持远程调试,可以在开发人员的本地机器上通过IDE调试远程部署的PHP代码。...这使得开发人员可以使用他们熟悉的调试工具来诊断和解决问题,而无需在远程服务器上直接进行操作。
领取专属 10元无门槛券
手把手带您无忧上云