以前以为php调试时服务器端和IDE必须在同一台机子上,无意发现xdebug其实是支持远程调试的。
尝试之后发现可以配置成功,还是可以调试代码的感觉爽啊!
 

php所在Ubuntu服务器              :192.168.10.XXX

Windows开发机(Zend作为IDE) :192.168.40.XXX
PS:PHPStorm也是可以配置成功的,个人更喜欢Zend,所以以zend为例。
 
1.服务器端安装php的xdebug插件
  使用php编译出xdebug,放到php的插件目录
/opt/php/lib/php/extensions/no-debug-non-zts-20121212/xdebug.so
 
 
2.配置php.ini
[xdebug]
zend_extension="/opt/php/lib/php/extensions/no-debug-non-zts-20121212/xdebug.so"      
                                                                                     
xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_host=192.168.10.XXX ← 此处为服务器IP
xdebug.remote_port=9009                ← 默认9000端口与php-fpm冲突,改成9009
xdebug.remote_connect_back=1
xdebug.remote_autostart=0
 
※修改完后需要重启web服务器
 
3.windows开发下安装Zend
 
4.配置Zend
 1)配置PHP Servers
 
起一个Server name,设置Debugger方式为Xdebug,最后设置启动目录
 
还是这个窗口,切到第二个tab上,配置服务器目录和本地代码目录的对应关系。(关键步骤
 
注意:我使用samba使得windows下用的和ubuntu下是同一份代码,如果本地代码和服务器不一致的话,不清楚会发生什么!
 
2)配置xdebug
由于把xdebug的默认端口号改为了9009,所以这里也需要修改为9009。
 
3)确认php的debug模式
这里的PHP Server应该就是前面配置好的那个Server名
 
4)修改默认浏览器为chrome。默认的内置浏览器行为怪异,建议使用chrome
 
5.配置debug启动项
 
继续确认Debugger是否配置为了xdebug
 
6.确认结果
想要调试的代码行前面单击,打上断点,然后刷新浏览器,查看断点是否进入。
没有问题的话,将会进入断点
 
以上

PHP+Xdebug实现远程调试的更多相关文章

  1. PHP - 如何使用XDEBUG来远程调试?

    开发的时候我都是使用XDebug在本地调试,但是最近加入一些项目中去,环境太复杂了,要在本地搭建一个开发环境真的太麻烦了,那么我们怎么使用xdebug来远程调试呢? 我这里使用虚拟机搭建了一个模拟环境 ...

  2. 使用phpstorm和xdebug实现远程调试

    使用phpstorm和xdebug实现远程调试 2012-05-23 10:06:35 vs的断点调试功能很强大有木有,能查看所有变量有木有.php调试很麻烦有木有,echo,var_dump写得你想 ...

  3. PHP使用Xdebug进行远程调试

    PHP使用Xdebug进行远程调试 翻译 by mylxsw posted on 2014/07/14 under 技术文章 > 编程语言 Xdebug提供了客户端与PHP脚本进行交互的接口,这 ...

  4. 使用xdebug+eclipse远程调试centOS7上的PHP代码

    这两天一直在研究PHP代码的调试,原来开发一直用的var_dump,麻烦! 最近发现能使用xdebug+eclipse远程单步调试PHP,但是百度后实现此技术的文章都写得不够具体. 我照着这里零散的文 ...

  5. PHPStorm+Xdebug断点远程调试PHP xdebug安装

    一.xdebug安装 wget http://www.xdebug.org/files/xdebug-2.2.3.tgz #下载Xdebug tar xzf xdebug-2.2.3.tgz cd x ...

  6. [视频教程] 配置vscode的PHP自动补全提示与使用Xdebug进行远程调试debug

    默认下载安装完的vscode并不能准确提示和检测PHP的语法错误,需要手动指定一下本机的PHP程序路径.按下面的操作配置完后就能在文件保存的时候检测语法有无错误.打开文件->首选项->se ...

  7. php+xdebug+dbgp远程调试(多人)

    目录 创建 DBGP 服务 配置 调试 创建 DBGP 服务 到 下载页面,下载 python 版本的 dbgp 到服务器上. 解压后执行 pydbgpproxy. 如果提示找不到 dbgp 模块,则 ...

  8. Xdebug文档(七) 远程调试

    Xdebug提示调试客户端接口与PHP运行相联系.该章节解释如何设置PHP与xdebug,并推荐一些客户端. 介绍 Xdebug的远程调试器允许你检查数据结构,交互式地穿过和调试你的代码.该协议已经开 ...

  9. XDEBUG 远程调试

    我的PHP环境是安装在虚拟机中.真机系统用的是windows.那么我要用XDEBUG调试代码,就得用XDEBUG的远程调试功能. 首先要给远程环境中安装XDEBUG扩展,具体方法:http://www ...

随机推荐

  1. fastcgi main

    main函数里 当kill -TERM pid 时, http://redfoxli.github.io/php-fpm-signals.html  这篇文章 说是 1)master主进程接收到sig ...

  2. 10分钟教你用Python玩转微信之好友性别比例统计分析

    01 前言+效果展示 想必,微信对于大家来说,是再熟悉不过的了.那么,大家想不想探索一下微信上的各种奥秘呢?今天,我们一起来简单分析一下微信上的好友性别比例吧~废话不多说,开始干活. 结果如下: 02 ...

  3. js中奇怪的问题 同步ajax,modal遮罩层

    奇怪问题一 今天有一段js执行的时候出现了问题 $.ajax({ ..., async:false, ... }); $('#myModal').modal('hide'); loadcurrentp ...

  4. 2016级算法第二次上机-A.画个圈圈诅咒你

    890 画个圈圈诅咒你 思路 简单题.题目中的圆并没有什么实际作用,简化成线段重合问题会更好理解些. 暴力解法:使用双重for循环会T到想哭,记住最直接的方法一般是过不了题的. 解法一:二分查找.空间 ...

  5. 数据库开发基础-★SQl Server 控制数据库的服务+数据库的创建与管理(增删改查)★

    控制数据库的服务: 方法一: 1.Windows+R 打开运行  打开cmd 2.输入net start MSSQLserver 启动数据库服务 输入net stop MSSQLserver 关闭数据 ...

  6. Shell基本知识

    Shell是什么 Shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以使用Shell来启动.挂起.停止甚至编写一些程序. Shell还是一个功 ...

  7. spring测试save方法报错

    用test类测试service的save方法时,报错如下: 2018-08-24 21:52:13,506 - could not read a hi value com.mysql.jdbc.exc ...

  8. JAVA普通内部类的用法

    内部类顾名思义就是定义在一个类的内部 内部类又有普通内部类.方法和域内的内部类.匿名内部类.嵌套内部类 普通内部类的基础用法 class MyClass{ class InnerClass1{ pub ...

  9. QT 相关

    Qt是一个GUI框架,在GUI程序中,主线程也叫GUI线程,因为它是唯一被允许执行GUI相关操作的线程.对于一些耗时的操作,如果放在主线程中,就是出现界面无法响应的问题. 解决方法一:在处理耗时操作中 ...

  10. 实现Map按key或按value排序

    原理思路:用List实现排序,然后将List中的值遍历存入到LinkedHashMap 实现方式: //这里将map.entrySet()转换成list List<Map.Entry<St ...