设置xdebug实行调节和测试,PHP远程调节和测试之XDEBUG

出于容器化的须要,前日自个儿本地也换到了docker环境。就钻研了一晃docker环境下phpstorm和xdebug的布署。

1.因而 vagrant ssh登录虚拟机

付出的时候自个儿都以应用XDebug在本土调节和测试,可是近日参与一些门类中去,环境太复杂了,要在该地搭建1个费用条件真的太麻烦了,那么我们怎么使用xdebug来远程调节和测试呢?

一、下载xdebug

那么些博客给出了两个常规的化解思路。这里必要留意的是,在docker环境下phpstorm的CLI
Interpreter须求安插容器镜像和目录映射。

2.在虚拟机中经过 yum 命令安装docker

本身那边运用虚拟机搭建了三个模仿条件来试验证实:

  xdebug官网:

mac环境下docker中的Xdebug不能够应用127.0.0.1左右remote_host。而是要采纳docker的宿主IP。

3.通过docker -v检查docker是不是安装成功

1.虚拟机IP:192.168.174.130 ,虚拟机用于搭建lampp环境

  在甄选下载哪个版本的xdebug的时候需求注意了,上面有三种方法,让您精确的下载自身条件对应的xdebug文件:

由于办公环境的扑朔迷离,导致自家得本机IP,也便是docker的宿主IP平常会发生变化,++那么xdebug配置文件中布局xdebug_remote_host为宿主ip的法门就并不实用++。笔者在stack
overflow上找到了缓解措施。那正是布置xdebug_remote_host为==docker.for.mac.localhost==就足以经过静态的安顿去动态的访问宿主IP

4.开启docker加速器

2.实体机IP:192.168.174.1,这么些是IDE的付出条件。

  1>.打印出phpinfo()信息,如下:

那里要注意的是Docker的本子须要在17.06以上!

curl -sSL  |
sh -s http://68abbefd.**m**.daocloud.io

设置xdebug实行调节和测试,PHP远程调节和测试之XDEBUG。第①小编在虚拟机里面安装了一个lampp,而且增添了一vhosts,具体如下:

亚洲必赢官网 1

全部配置如下

然后重新启航docker  (service docker restart)

vim /opt/lampp/etc/extra/httpd-vhosts.conf
<VirtualHost *:80>
  ServerAdmin webmaster@dummy-host.example.com
  DocumentRoot "/data/web"
    <Directory "/data/web">
        Options All
        AllowOverride All
        Require all granted
    </Directory>
  ServerName www.test.com
  ErrorLog "test-error_log"
  CustomLog "test-access_log" common
</VirtualHost> 

  亚洲必赢官网 2

zend_extension = xdebug.so
xdebug.remote_enable = 1
xdebug.remote_connect_back = 0
xdebug.remote_host = docker.for.mac.localhost
xdebug.remote_port = 9000
xdebug.remote_handler = dbgp
xdebug.remote_mode = req
xdebug.remote_autostart = 1
xdebug.idekey = PHPSTORM

搭建nginx+php开发环境

此间为了方便给vhosts设置二个域名,这几个须求修改实体机的/etc/hosts后才能访问:

    然后还要注意一点正是探望自身php对应的本子和操作系统的位数,结合那四点去官网找到呼应的xdebug文件(自个儿是php是7.0.1的本子,文件名:php_xdebug-2.6.0-7.0-vc14-x86_64.dll)

关键点:映射的文本须求求写正确

192.168.174.130    www.test.com

  2>.使用xdebug官方提供的三个检测工具:

 

注重的一步大家须求安装虚拟机中的php.ini来支撑xdebug远程调节和测试,增添了之类代码:

    亚洲必赢官网 3

1.Su root先以管理员身份登录

vim /opt/lampp/etc/php.ini
zend_extension="/opt/lampp/lib/php/extensions/no-debug-non-zts-20131226/xdebug.so"
[xdebug]
xdebug.default_enable=1
xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_host=192.168.174.130
xdebug.remote_port=9000
xdebug.remote_connect_back=1
xdebug.remote_autostart=1 

    这里就把phpinfo()的新闻运用输出出来(注意:使用输出函数,比如var_dump()),然后就会检测你的能够下载对应的本子,如下图:

2.nginx和php环境的搭建:http://www.tuicool.com/articles/AVZFZ3m

最器重的多个设置xdebug.remote_host和xdebug.remote_connect_back,remote_host要设置成服务器的ip,remote_connect_back要设置成1大概on

  亚洲必赢官网 4

3.docker搭建注意事项:

到那里,服务端就安装好了,接下去大家来设置ide了,请见谅自个儿是叁个ide工具党。小编使用的英特尔lij
IDEA,而PHPStorm的安装也是一律的。

二 、安装并安顿xdebug

  • nginx镜像和php镜像下载好未来
  • 先部署php镜像

先是设置项目标server

  1>.将下载好的.dll文件放入钦定的任务(……\php\php7.0.10\ext\)

   (docker run -p 柒仟:柒仟–name php7 –restart=always -v /vagrant/app/www:/var/www/html
-privileged=true -d php:7.1.0-fpm)
ps: /vagrant/app/www为虚拟主机中的地址  –restart=always表示开机自动运营

亚洲必赢官网 5

  2>.配置php.ini配置文件(那里必要小心一点,找对了php.ini文件),在网页上打字与印刷出phpinfo()的新闻,查看这一条音讯:

  • 因此docker inspect php7获取相应的容器ip地址
  • 经过nginx镜像安插nginx容器

在Host那里要填上,能够平常访问到虚拟机服务器的地址,大家此前设置的虚拟域名是www.test.com,所以自个儿图上也是写得这些。

    亚洲必赢官网 6

(docker run -p 80:80 -name nginx
-v /vagrant/app/www:/usr/share/nginx/html -v
/vagrant/app/logs:/var/log/nginx -v
/vagrant/app/nginx/conf.d:/etc/nginx/conf.d –privileged=true -d
nginx)

最根本的装置地点正是要勾上那么些路子映射,然后将须求调剂的文书写上它在服务器上的路径,比如自个儿那里须求调剂a.php,而在虚拟机服务器上我们设置的web目录是/data/web/,那么它映射的不二法门就应有是/data/web/a.php了。

    能够观察是哪位php的布局文件,然后添加一下布置:    

  • 修改/vagrant/app/nginx/conf.d下面的default.conf文件把

全部设置好了后头,就足以像当地调节和测试这样发轫了。

[xdebug]
zend_extension ="G:/wamp64/bin/php/php7.0.10/ext/php_xdebug-2.6.0-7.0-vc14-x86_64.dll"

xdebug.remote_enable = On
;启用性能检测分析
xdebug.profiler_enable = On
;启用代码自动跟踪
xdebug.auto_trace=On
xdebug.profiler_enable_trigger = On
xdebug.profiler_output_name = cachegrind.out.%t.%p
;指定性能分析文件的存放目录
xdebug.profiler_output_dir ="G:/wamp64/tmp"
xdebug.show_local_vars=0

;配置端口和监听的域名
xdebug.remote_port=9000
xdebug.remote_host="localhost"

 

亚洲必赢官网 7

  配置实现后,就足以重启你的环境了,然后在页面打字与印刷出phpinfo()音信就能看到有xdebug的新闻了

  • 重启nginx容器(docker restart nginx)

OK了,没有怎么技术含量,但希望能帮到须求的恋人,注意把小说中得ip地址,修改你本人的服务器的地点。

 三、配置phpstorm

 

以上内容给大家分享了PHP远程调节和测试之XDEBUG的连锁知识,希望大家喜欢。

  1>.打开phpstorm,PHP>Debug 的设置,“Debug
port”与“xdebug.remote_port”一致,并且同意外部连接(浏览器XDebug插件):

 

您或然感兴趣的稿子:

  • PHP中调节和测试函数debug_backtrace的施用示例代码
  • php中debug_backtrace、debug_print_backtrace和匿名函数用法实例
  • phpstorm配置Xdebug举办调节PHP教程
  • PHP 调试工具Debug Tools
  • php质量优化分析工具XDebug
    大型网航站调度室节和测试工具
  • php
    调节和测试利器debug_print_backtrace()
  • PHP
    7安装调节和测试工具Xdebug扩展的不二法门教程
  • PHP调节和测试及品质分析工具Xdebug详解
  • Phpstorm+Xdebug断点调节和测试PHP的办法
  • 图像和文字详解phpstorm配置Xdebug实行调剂PHP教程
  • PHP使用debug_backtrace方法跟踪调节和测试代码调用详解

    亚洲必赢官网 8

Docker问题

    如图host配置成你刚才设置php配置文件中 xdebug.remote_host=”localhost”对应的参数,注意端口暗许80,不须要改变,debugger选拔xdebug即可

  1. 拍卖通过docker pull下载速度慢的题材

  2>.PHP>Debug 的设置,配置端口:

 开启加速器执行

    亚洲必赢官网 9

curl -sSL  |
sh -s http://68abbefd.**m**.daocloud.io

  3>.设置服务器调节和测试配置,Run>Web Server Debug Validation:

下一场又一次开动docker

    亚洲必赢官网 10

2.docker相关素材

肆 、安装Chrome的XDebug插件,参考链接:Install Xdebug
Helper

docker命令http://udn.yyuap.com/doc/docker\_practice/appendix\_repo/nginx.html

⑤ 、在phpstorm中利用xdebug举办调剂:

Docker普通话网站

  亚洲必赢官网 11

Docker镜像安装

  大概正是那般,等实际进行了再写…..

 

Php扩张的设置

安装zip扩展

  1. 执行

echo “@community ” >> /etc/apk/repositories
2.执行

apk –update add php7-zip@community

 

 

通过docker pull
php:5.6安装的php容器

 通过docker-php-ext-install
安装扩大eg:docker-php-ext-install redis

 (ps:假若报错,则要求开始展览编写翻译安装php扩大)

  编写翻译安装php扩充的具体步骤:

  执行docker exec -it php5.6
/bin/sh 进入php5.6容器中

  亚洲必赢官网 12

 

2.进入php安装目录

 亚洲必赢官网 13

 

3.一旦因此find /|grep
php.ini找不到php.ini文件,按如下截图进行

 亚洲必赢官网 14

 

4.亚洲必赢官网 15

 

5.然后重启php之后,php.ini的岗位就会出来

亚洲必赢官网 ,6.起来设置php的恢宏

  • 推行cd /usr/src/php/ext实行php扩张目录(在
  • wget https://pecl.php.net/get/redis-3.1.2.tgz
  • Tar -zxvf redis-3.1.2.tgz
  • Mv redis-3.1.2.tgz redis
  • Docker-php-ext-install redis
  • 重启php之后,php扩充安装完结。

 

在装置gearman增加的时候报编写翻译时出错:configure: error: Please install
libgearman

apt-get install libgearman-dev 即使没有找到实践 apt-get update

 

Xdebug配置

1.在装置达成xdebug扩展插件之后,配置xdebug

[xDebug]

zend_extension=xdebug.so

xdebug.auto_trace = 0

xdebug.remote_autostart = 1

xdebug.show_exception_trace = 0

xdebug.remote_enable = 1

xdebug.remote_connect_back = 1

xdebug.remote_host = 192.168.33.3     (ps:为呼吁访问的IP地址)

xdebug.remote_port = 9000

xdebug.idekey = phpstorm             

xdebug.remote_handler = dbgp

xdebug.profiler_enable_trigger = 0

xdebug.profiler_enable = 0

xdebug.collect_vars = 1

xdebug.collect_return = 1

xdebug.collect_params = 1

 亚洲必赢官网 16

 

 

 亚洲必赢官网 17

 

 亚洲必赢官网 18

 

网站地图xml地图