Mac 使用自带php和Apache 安装配置Xdebug 开启本地调试模式
Mac 安装配置php xdebug
本地调试
0、原理图

测试demo构建方法
新建空白项目,目录选择Apache默认项目目录

1、下载xdebug
https://xdebug.org/files/xdebug-2.9.0.tgz
具体自己的版本要根据的方法得出
2、使用官方检测指导工具
将phpinfo()打印内容的网页源码复制到框里,点击检测,会得到提示
然后根据提示进行操作
Instructions
Download xdebug-2.9.0.tgz
Install the pre-requisites for compiling PHP extensions. On your Mac, we only support installations with 'homebrew', and
brew install php && brew install autoconfshould pull in the right packages.Unpack the downloaded file with
tar -xvzf xdebug-2.9.0.tgzRun:
cd xdebug-2.9.0Run:
phpize(See the FAQ if you don't havephpize).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.Run:
./configureRun:
makeRun:
cp modules/xdebug.so /usr/local/lib/php/pecl/20180731Edit
/usr/local/etc/php/7.3/php.ini/usr/local/etc/php/7.3/php.ini and add the linezend_extension = /usr/local/lib/php/pecl/20180731/xdebug.soMake sure thatzend_extension = /usr/local/lib/php/pecl/20180731/xdebug.sois below the line for OPcache.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
参数分析:
- xdebug.remote_connect_back = 0 ,也是 Xdebug 的默认方式,这种情况下,Xdebug 在收到调试通知时会读取配置 xdebug.remote_host 和 xdebug.remote_port ,默认是 localhost:9000,然后向这个端口发送通知,这种方式只适合单一客户端开发调试

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

remote_connect_back与remote_host,remote_port的关系
xdebug.remote_connect_back = 1 //如果开启此,将忽略下面的 xdebug.remote_host 的参数,也就是说不会读取phpstorm中xdebug插件dbgp proxy中的参数,任何ip调用调试都会返回调试信息到该IP的remote_port端口中。
remote_host和remote_port
xdebug.remote_host=192.168.x.x //注意这里是,客户端的ip<即IDE的机器的ip,不是你的web server>xdebug.remote_port = 9001 //注意这里是,客户端的端口<即IDE的机器的ip,不是你的web server>
最终实验结果是,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://www.jianshu.com/p/da179e363318
Mac 使用自带php和Apache 安装配置Xdebug 开启本地调试模式的更多相关文章
- centos tomcat/resin安装配置 卸载系统自带的java tomcat安装配置 安装JDK resin安装配置 第二十八节课
centos tomcat/resin安装配置 卸载系统自带的java tomcat安装配置 安装JDK resin安装配置 第二十八节课 tomcat和java都不需要编译 tom ...
- Apache安装配置步骤
注释:这里以Linux 红帽商业版为例~~~~~~~纯手打啊 Apache安装配置步骤 准备:关闭其他虚拟设备 #/etc/init.d/libvirtd stop #/etc/init.d/xend ...
- Ajax - Apache安装配置
apache安装配置 1.安装wamp2.配置根路径3.默认的网站根路径是安装目录的www子目录,如果不想使用默认目录,可以自己配置.配置方式如下: --找到文件wamp\bin\apache\Apa ...
- Ubuntu 14.04 apache安装配置
http://jingyan.baidu.com/article/6d704a130c8a0d28da51ca5f.html Ubuntu 14.04 apache安装配置 1.安装 ~# apt-g ...
- 安装配置Xdebug模块详解
1.XDebug安装配置 (1)下载XDebug下载地址:http://www.xdebug.org/必须下载跟机器上安装的php匹配的版本才行.具体下载方法如下:将phpinfo网页的源代码拷贝到h ...
- Mac OS 10.10.3下Apache + mod_wsgi配置【一】
[一] 首先,MAC是自带Apache的,在/private/etc/apache2路径下,能够使用apachectl -v查看版本号.我的版本号例如以下: Server version: Apach ...
- Center OS 7 Apache安装配置
感谢:https://blog.csdn.net/u014157384/article/details/79497761 该作者的帮助. 自己购买了国外的服务器,想把我的网页放到服务器,网页是以web ...
- 4-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案数据篇(云端电脑(Windows)安装配置数据库,使用本地Navicat for MySQL和手机APP 远程连接测试)
3-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案数据篇(安装配置数据库,使用Navicat for MySQL和手机APP 连接测试) 根据前面的教程把软件复制到云 ...
- Centos 下php安装配置xdebug扩展
2018年05月02日 19:54:42 杨汉松 阅读数:44 1.下载安装xdebug 获取xdebug wget http://www.xdebug.org/files/xdebug-2.3. ...
随机推荐
- 单芯片CS5265替代VL102+PS176|设计USB TYPEC转HDMI方案|替代VL102+PS176
一.PS176概述PS176是一个显示端口 (DP)至HDMI 2.0视频接口转换器适用于需要视频协议转换的电缆适配器.电视接收器.监视器和其他应用.它将接受任何显示端口输入格式,包括DP 1.1a. ...
- JUC之线程间定制化通信
线程通信之定制化 之前文章中写了下Condition的使用,这里我们详细说下其中的用法: 首先使用Condition需要实例化Lock private Lock lock = new Reentran ...
- 新手入门typeScript
强类型与弱类型(类型安全) 强类型不允许随意的隐士类型转换,而弱类型是允许的 变量类型允许随时改变的特点,不是强弱类型的差异 静态类型与动态类型(类型检查) 静态类型:一个变量声明时它的类型就是明确的 ...
- 使用 jQuery 基本选择器获取页面元素,然后利用 jQuery 对象的 css() 方法动态设置 <span> 和 <a> 标签的样式
查看本章节 查看作业目录 需求说明: 使用 jQuery 基本选择器获取页面元素,然后利用 jQuery 对象的 css() 方法动态设置 <span> 和 <a> 标签的样式 ...
- centos7 安装python3 小白教程-CV大法
安装python3 centos7,默认系统自带python2.7的版本,这个版本被系统很多程序所依赖,所以不建议删除,如果使用最新的Python3那么我们知道编译安装源码包和系统默认包之间是没有任何 ...
- PHP DateTime类常用方法总结
实例化: $date = new DateTime(); $date = new DateTime('2018-01-01'); $date = new DateTime('tomorrow'); $ ...
- CSS基础 定位相关属性的使用方法
1.相对定位:position:relative: 属性名:position 属性值:relative: 特点:1.相对自己的位置移动 2.配合方位名词移动,如:top.left.right,bott ...
- Chrome - XPath Helper插件 使用手工拖拽方式无法正常安装的解决办法
安装前准备: (1)下载 XPath Helper资源: 链接: https://pan.baidu.com/s/1yEnngIJz8fT9fNv3aHhs7w 提取码: afy3 (2)Chrome ...
- iOS微信支付无法直接返回APP的问题
最近新测个项目,发现在IOS手机的APP上使用微信支付无法直接返回APP. 咨询微信客服,了解到无法直接返回APP的原因是收款配置的APPID为合作商家的APPID,而不是公司APP的APPID. 当 ...
- 解决ubuntu 18.04(桌面版)搜狗输入法不能正常使用的问题
ubuntu下搜狗输入法的配置文件在~/.config目录下,一般有三个目录SogouPY.SogouPY.users.sogou-qimpanel 执行命令 $ cd ~/.config $ rm ...