Mac 安装配置php xdebug

本地调试

0、原理图

https://paper.seebug.org/308/

测试demo构建方法

新建空白项目,目录选择Apache默认项目目录

1、下载xdebug

https://xdebug.org/files/xdebug-2.9.0.tgz

具体自己的版本要根据的方法得出

2、使用官方检测指导工具

https://xdebug.org/wizard

将phpinfo()打印内容的网页源码复制到框里,点击检测,会得到提示

然后根据提示进行操作

Instructions

  1. Download xdebug-2.9.0.tgz

  2. Install the pre-requisites for compiling PHP extensions. On your Mac, we only support installations with 'homebrew', and brew install php && brew install autoconf should pull in the right packages.

  3. Unpack the downloaded file with tar -xvzf xdebug-2.9.0.tgz

  4. Run: cd xdebug-2.9.0

  5. Run: phpize (See the FAQ if you don't have phpize).

    As part of its output it should show:

     
    Configuring for:
    ...
    Zend Module Api No:      20180731
    Zend Extension Api No:   320180731

    If it does not, you are using the wrong phpize. Please follow this FAQ entry and skip the next step.

  6. Run: ./configure

  7. Run: make

  8. Run: cp modules/xdebug.so /usr/local/lib/php/pecl/20180731

  9. Edit /usr/local/etc/php/7.3/php.ini /usr/local/etc/php/7.3/php.ini and add the line zend_extension = /usr/local/lib/php/pecl/20180731/xdebug.so Make sure that zend_extension = /usr/local/lib/php/pecl/20180731/xdebug.so is below the line for OPcache.

  10. Restart the webserver

sudo apachectl restart

安装路径:/Users/taylor/workSoft/php-debug

3、配置php.ini

vim /usr/local/etc/php/7.3/php.ini

大写G到最后一样,添加配置

 
 
[xdebug]
zend_extension=/usr/local/lib/php/pecl/20180731/xdebug.so
xdebug.remote_enable=1
xdebug.remote_autostart=1
xdebug.idekey=PHPSTORM
xdebug.remote_handler=dbgp
xdebug.remote_connect_back=1
xdebug.remote_host=localhost
xdebug.remote_port=9050
xdebug.scream=0
xdebug.show_local_vars=1

参数分析:

  1. xdebug.remote_connect_back = 0 ,也是 Xdebug 的默认方式,这种情况下,Xdebug 在收到调试通知时会读取配置 xdebug.remote_host 和 xdebug.remote_port ,默认是 localhost:9000,然后向这个端口发送通知,这种方式只适合单一客户端开发调试

  1. 另外一种方式则是不绑定IP,xdebug.remote_connect_back = 1, Xdebug根据请求来源(REMOTE_HOST)来发起调试。示例图如下:

  1. remote_connect_back与remote_host,remote_port的关系

    xdebug.remote_connect_back = 1 //如果开启此,将忽略下面的 xdebug.remote_host 的参数,也就是说不会读取phpstorm中xdebug插件dbgp proxy中的参数,任何ip调用调试都会返回调试信息到该IP的remote_port端口中。

  2. remote_host和remote_port

    xdebug.remote_host=192.168.x.x //注意这里是,客户端的ip<即IDE的机器的ip,不是你的web server>xdebug.remote_port = 9001 //注意这里是,客户端的端口<即IDE的机器的ip,不是你的web server>

  3. 最终实验结果是,xdebug.remote_port 任何没被占用的端口都可以

重启php-fpm

sudo killall php-fpm sudo php-fpm

或者 /etc/init.d/php73-fpm reload

再打印phpinfo就可以看到

4、配置phpstorm

debug配置

servers配置

5、php项目运行方式

1.phpstorm ide作为调用者

开启监听后,直接点击小虫子进行运行,浏览器中会自动弹出窗口,地址类似于

http://localhost/helloDebug/hello.php?XDEBUG_SESSION_START=17598

自动带了xdebug_session

2.使用xdebug helper插件

单击左键后,点击debug,开启插件

然后浏览器中输入想要调试的地址即可 http://localhost/helloDebug/hello.php

效果图

参考:

https://drops.blbana.cc/2019/09/27/PHPStorm%E8%BF%9C%E7%A8%8B%E8%B0%83%E8%AF%95%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA%E4%BB%A5%E5%8F%8A%E5%8E%9F%E7%90%86/

https://www.jianshu.com/p/da179e363318

Mac 使用自带php和Apache 安装配置Xdebug 开启本地调试模式的更多相关文章

  1. centos tomcat/resin安装配置 卸载系统自带的java tomcat安装配置 安装JDK resin安装配置 第二十八节课

    centos  tomcat/resin安装配置  卸载系统自带的java  tomcat安装配置  安装JDK   resin安装配置    第二十八节课 tomcat和java都不需要编译 tom ...

  2. Apache安装配置步骤

    注释:这里以Linux 红帽商业版为例~~~~~~~纯手打啊 Apache安装配置步骤 准备:关闭其他虚拟设备 #/etc/init.d/libvirtd stop #/etc/init.d/xend ...

  3. Ajax - Apache安装配置

    apache安装配置 1.安装wamp2.配置根路径3.默认的网站根路径是安装目录的www子目录,如果不想使用默认目录,可以自己配置.配置方式如下: --找到文件wamp\bin\apache\Apa ...

  4. Ubuntu 14.04 apache安装配置

    http://jingyan.baidu.com/article/6d704a130c8a0d28da51ca5f.html Ubuntu 14.04 apache安装配置 1.安装 ~# apt-g ...

  5. 安装配置Xdebug模块详解

    1.XDebug安装配置 (1)下载XDebug下载地址:http://www.xdebug.org/必须下载跟机器上安装的php匹配的版本才行.具体下载方法如下:将phpinfo网页的源代码拷贝到h ...

  6. Mac OS 10.10.3下Apache + mod_wsgi配置【一】

    [一] 首先,MAC是自带Apache的,在/private/etc/apache2路径下,能够使用apachectl -v查看版本号.我的版本号例如以下: Server version: Apach ...

  7. Center OS 7 Apache安装配置

    感谢:https://blog.csdn.net/u014157384/article/details/79497761 该作者的帮助. 自己购买了国外的服务器,想把我的网页放到服务器,网页是以web ...

  8. 4-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案数据篇(云端电脑(Windows)安装配置数据库,使用本地Navicat for MySQL和手机APP 远程连接测试)

    3-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案数据篇(安装配置数据库,使用Navicat for MySQL和手机APP 连接测试) 根据前面的教程把软件复制到云 ...

  9. Centos 下php安装配置xdebug扩展

    2018年05月02日 19:54:42 杨汉松 阅读数:44   1.下载安装xdebug 获取xdebug wget http://www.xdebug.org/files/xdebug-2.3. ...

随机推荐

  1. IM2603资料 Type-C 扩展坞电源管理芯片

    用于带有集成降压转换器的 Type-C 外围应用的电源管理 IC IM2603 是一款主要用于 Type-C 外围应用的电源管理 IC. 它集成了一个带有内置高侧 MOSFET 的同步降压转换器和一个 ...

  2. CS5210完全替代AG6202|HDMI转VGA不带音频输出的芯片+原理图|替代兼容AG6202

    CS5210完全替代AG6202|HDMI转VGA不带音频输出的芯片+原理图|替代兼容AG6202 安格AG6202是一个HDMI转VGA不带音频解决方案,用于实现HDMI1.4高分辨率视频转VGA转 ...

  3. CapstoneCS5212|DP to VGA|CS5212设计电路方案

    CS5212功能概述 CS5212是一款DisplayPort端口到VGA转换器,它结合了DisplayPort输入接口和模拟RGB DAC输出接口.嵌入式单片机基于工业标准8051核心. CS521 ...

  4. 【优雅代码】02-java传个方法你会吗,不是Method对象

    [优雅代码]02-java传个方法你会吗,不是Method对象 欢迎关注b站账号/公众号[六边形战士夏宁],一个要把各项指标拉满的男人.该文章已在github目录收录. 屏幕前的大帅比和大漂亮如果有帮 ...

  5. Java高级程序设计笔记 • 【第3章 多线程(二)】

    全部章节   >>>> 本章目录 3.1 同步代码块 3.1 线程安全 3.1.1 模拟银行取款 3.1.2 同步代码块的使用 3.1.3 实践练习 3.2 同步方法 3.2. ...

  6. 查看电脑内存是ddr3还是ddr4

    内存不够用了 要加个内存 但是不想拆机 怎么知道自己电脑是第几代内存呢? 怎么知道频率呢? 1.运行cmd 2.输入wmic回车 3.输入memorychip回车 4.往右拉找到Speed Statu ...

  7. 每天学一点——python基本数据类型

    python基本数据类型 字符串类型(str) 字符串类型的数据一定是描述性质的,且由引号括起来的数据都是字符串数据(单引号.双引号.三引号.) 如下图 (简单易懂) 这里列举一些不明所以的问题 如图 ...

  8. Hbase集群安装Version1.1.5

    Hbase集群安装,基于版本1.1.5, 使用hbase-1.1.5.tar.gz安装包. 1.安装说明 使用外部Zookeeper集群而非Hbase自带zookeeper, 使用Hadoop文件系统 ...

  9. linux(CentOS7) 之 克隆虚拟机并配置网络(固定ip)

    克隆机器 原机关机状态下,克隆. 下一步 选择当前状态,下一步 选择创建完整克隆,下一步 设置虚拟机名称(完成后可以修改).克隆机安装位置,下一步 等待克隆完成 克隆完成 配置网络 添加网卡(因为物理 ...

  10. Chromium Windows Build

    https://chromium.googlesource.com/chromium/src/+/refs/heads/main/docs/windows_build_instructions.md ...