ref:https://www.cnblogs.com/yjken/p/6555438.html

readme:本文设置远程调试ubuntu中的php代码。

在docker中也可以,经过测试phpinfo发现php.ini在/usr/local/etc/php目录,但是实际不存在,没关系仍然将下面xdebug的配置信息单独写入php.ini.

显然在docker中构建环境,可以使得多个web环境共存。

phpstorm中配置真正的远程调试(xdebug)

这里说的是真正的远程调试,不是本地,本地不需要安装任何php程序!!!

这里略去xdebug的安装,安装很简单可以下载源码包,动态编译进去!

环境:

  Dev 服务器(IP:192.168.2.100),安装phpstorm,用来做开发任务!

  Server服务器(IP:192.168.2.222),web服务器(php架构),用来浏览网页用!

这里的两台服务器在同一个网段下,可以互通!

在Server服务器上的php.ini里配置xdebug如下:

1
2
3
4
5
6
7
8
9
[xdebug]
zend_extension=/opt/php5/lib/php/extensions/no-debug-non-zts-20090626/xdebug.so
 
xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_host=192.168.2.100
xdebug.remote_port=9000
xdebug.idekey="PHPSTORM"

remote_host参数的值填写Dev 服务器(开发机器)的IP地址。

remote_port填写9000,只要没有被其它程序占用,就可以了,可以不是9000。

接下来开始设置phpstorm的参数:

快捷键(Ctrl + Alt + S)打开窗口:

打开phpstorm的配置对话框,找到Languages & Frameworks  >> PHP >>Debug 窗口

这里填写的Debug port为:9000,与php.ini里配置的端口号保持一致!

接下来点选Server选项,点击绿色的 “+” 新建Server,并根据如下设置填写你相对应的内容!

因为是远程调试,所以这里的Use Path mappings 一定要选,并且本地与远程文件要映射好。

Debugger里选择:Xdebug !

接下来配置Edit Configurations( Run >> Edit Configurations)

点击后弹出窗口如下:

选中PHP Web Application ,在右边选择前面新增的Server:ecstore,保存。

这里其实只是用来配置一个模板,我之前只配置了这个,没有新增Debug选项,总是不能调试,后来参照资料才想明白,这里其实只是模板,配置好了后,可以直接新增选择对应模板就可以了。

现在来新增Debug选项:

点击后新增调试选项:

好了。

在php代码里打个断点开始调试吧:)

然后,点击调试,开始愉快的干活吧!!!

看看调试效果:

这里真的没有什么DBGp概念,我们没有用到,也没有什么点击什么绿色的电话图标启动Start Listening...,有吗??

没用,真的用不到那么些概念,网上一大堆以讹传讹的贴子,真是越看越迷糊!!!

就这么愉快的调试吧 :)

关于DBGp,其实就是个代理,把phpstorm设置成一个代理,但是对于我来说,真的需要什么代理吗???

就这样吧,最简单的远程调试,去粗到精的成果!

ref:phpstorm配置远程调试(xdebug)(docker中)的更多相关文章

  1. Tomcat配置远程调试端口

    Tomcat配置远程调试端口 1.Linxu系统: apach/bin/startup.sh开始处中增加如下内容: declare -x CATALINA_OPTS="-server -Xd ...

  2. phpstorm中配置真正的远程调试(xdebug)

    这里说的是真正的远程调试,不是本地,本地不需要安装任何php程序!!! 这里略去xdebug的安装,安装很简单可以下载源码包,动态编译进去! 环境: Dev 服务器(IP:192.168.2.100) ...

  3. Tomcat配置远程调试端口(windows、Linux)

    当我们需要定位生产环境问题,而日志又不清晰的情况下,我们可以借助Tomcat提供的远程调试,设置如下: // Linxu系统: apach/bin/startup.sh开始处中增加如下内容: decl ...

  4. Tomcat配置远程调试

    ===========方法1================================ tomcat7 :catalina.bat jpda start,调试端口默认为8000 ======== ...

  5. pycharm快捷键、配置virtualenv环境,配置django调试,配置远程调试

    pycharm安装和首次使用 http://blog.csdn.net/chenggong2dm/article/details/9365437 快捷键: 找文件.代码.引用相关 1.双击shift ...

  6. VSCODE 配置远程调试环境

    以下内容为本人的著作,如需要转载,请声明原文链接微信公众号「englyf」https://www.cnblogs.com/englyf/p/16691460.html 我的需求是,在Windows桌面 ...

  7. tomcat-在eclispe中配置远程调试

    在eclispe中新建web应用,名字叫webtest.里面只有一个HelloServlet.Web.xml配置如下. 修改tomcat的启动脚本startup.bat.复制startup.bat为s ...

  8. IDA远程调试 在内存中dump Dex文件

    1. 首先使用调试JNI_OnLoad函数的方法,先将apk以调试状态挂起,使用IDA附加上去. 2. 然后在libdvm.so中的dvmDexFileOpenPartial函数上下一个断点 3. 然 ...

  9. PHPstorm配置远程及本地服务器

    首先打开PHPStorm的设置. 找到如下页面 OPEN一个项目,路径为XAMPP的安装路径 选择Local or mounted folder 设置以上属性,upload/download proj ...

随机推荐

  1. spring整合hibernate时报错:org.hibernte.engine.transaction.spi.transactioncontext

    错误提示:Caused by:java.lang.ClassNotFoundException: org.hibernte.engine.transaction.spi.transactioncont ...

  2. [DeeplearningAI笔记]序列模型3.9-3.10语音辨识/CTC损失函数/触发字检测

    5.3序列模型与注意力机制 觉得有用的话,欢迎一起讨论相互学习~Follow Me 3.9语音辨识 Speech recognition 问题描述 对于音频片段(audio clip)x ,y生成文本 ...

  3. string的内存本质

    虽然没有研究过string的源代码,不过可以确定的是string的内存空间是在堆上开辟的,它自己负责释放空间,不用我们关系. 我们用一个动态分配的字符串指针初始化一个string对象retStr,它会 ...

  4. Eclipse 导入Hadoop 2.6.0 源码

    1. 首先前往 官网(Hadoop 2.6 下载地址)上下载Hadoop的源码文件,并解压 2. 事先请确定已经安装好jdk以及maven(Maven安装教程 这是其他人写的一篇博文,保存profil ...

  5. Android通过php插入查询SQL数据库

    PHP代码 <?php header("Content-type: text/html; charset=gb2312"); $serverName = "loca ...

  6. UVA 818 Cutting Chains

    https://vjudge.net/problem/UVA-818 题意: 有n个圆环,其中有一些已经扣在了一起.现在需要打开尽量少的圆环,使得所有圆环可以组成一条链 n<=15 因为n< ...

  7. ② 设计模式的艺术-08.桥接(Bridge)模式

    为什么需要桥接(Bridge)模式 商城系统中常见的商品分类,以电脑为类,如何良好的处理商品分类销售的问题? 采用多层继承结构: 多层继承结构代码示例 Computer.java package co ...

  8. 巧用Javascript将相对路径地址转换为绝对路径

    这里介绍的其实本质上是两种方法,通过创建DOM或通过JavaScript计算: 1)通过新创建的Image, 经测试会发送一个Aborted的请求,并且IE6不支持, 将new Image改成docu ...

  9. 脱离MVC使用Razor模板引擎

    关于Razor模板引擎 1.简介 模板引擎:Razor.Nveocity.Vtemplate.Razor有VS自动提示.使用起来会方便一点. 但是Razor大多是在MVC下使用的. 那么如何在非MVC ...

  10. 【leetcode 简单】第十六题 二进制求和

    给定两个二进制字符串,返回他们的和(用二进制表示). 输入为非空字符串且只包含数字 1 和 0. 示例 1: 输入: a = "11", b = "1" 输出: ...