上一节,我们介绍了如何在PhpStorm2018中配置xdebug。(请翻看本博客上一节)
可以在PhpStorm中浏览php文件,然后进行断点调试。
这一节,实战升级,我们将在两个不同的服务器下面进行断点。
- 软件版本:JetBrains PhpStorm 2018.2.4 x64
- PHP环境:PhpStudy 20161103
- Chrome插件:xdebug helper-1.6.1.crx
- https://github.com/mac-cain13/xdebug-helper-for-chrome
应用场景:
(1)本地开发web服务器,边开发边断点,在上一节已经实现。
(2)正式线上web服务器,上线运行,但需要进行断点查找bug。(本节内容)
前提条件:两台PHP服务环境中都需要安装php的xdebug扩展。
我们在本机布署两个web服务器,第1个开发web服务器使用PhpStorm内置的即可。
第2个线上正式web服务器,我们使用phpStudy来模拟即可。(不会请看上一节)
简单来说:
我们在电脑上运行了两个不同的web-php服务器。本地开发localhost:63342和模拟线上localhost:80。
我们的远程调试在Chrome下进行,需要用到的Chrome扩展插件是:xdebug helper-1.6.1.crx (网上有)
https://github.com/mac-cain13/xdebug-helper-for-chrome
在Chrome浏览器的扩展中安装此项,然后在设置中,使用ideKey=PhpStorm;
由于它的IDE key名称叫做PhpStorm,所以我们还需要在PhpStorm中重新设置一下。
如上图所示,两边的IDE key的名称一定要保持对应。
打开php.ini在XDebug的扩展栏这处,idekey的名称也要对应上。如上图所示。
然后分别设置两台不同的Servers即可。
这个63342端口的是本地开发web服务器,实际上就是PhpStorm的内置服务器地址。
这个80端口就是远程服务器,由于我是本机模拟所以Host填的是localhost,这个属于phpStudy在运行。
到此为止,配置完成。我们这次在PhpStorm中打上断点,但不在PhpStorm进行启动浏览。
而是浏览请求在远程服务器上的php 页面, 检验我们的本地断点是否会成功调用。
检测到连接后,在Chrome的xdebug插件上,选择debug.
远程页面的打开后,刷新页面。可以看到本地断点成功进来了。这就是php远程调试的例子。
真正线上调试,需要把localhost改成实际的域名。
本篇涉及的配置,如果您看不明白,请看本节之前的教程连载。
如有问题,请在评论区留言。谢谢~
补充知识:Chrome安装第三方扩展插件可能会遇到的问题.
问题:该扩展程序未列在 Chrome 网上应用店中,并可能是在您不知情的情况下添加的。
1、首先把需要安装的第三方插件,后缀.crx 改成 .rar,然后解压,得到一个文件夹。
2、再打开chrome://extensions/谷歌扩展管理,点击右上角的开发者模式,就可以看到“加载正在开发的扩展程序”这一选项。
3、浏览选择刚才步骤1中解压好的文件夹,确定。
4、确认新增扩展程序,点击添加,成功添加应用程序。