PHP远程调试之XDEBUG,安装xdebug举办调节

鉴于容器化的内需,前几日自己本地也换成了docker环境。就钻研了一下docker环境下phpstorm和xdebug的配备。

1.透过 vagrant ssh登录虚拟机

支出的时候我都是运用XDebug在地点调试,可是近日投入一些档次中去,环境太复杂了,要在地头搭建一个支付环境确实太麻烦了,那么大家怎么利用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

率先我在虚拟机里面安装了一个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 9000:9000
–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

PHP远程调试之XDEBUG,安装xdebug举办调节。  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

 

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*
*
Website