本文主要讲解利用PHPStorm和Xdebug调试PHP Web程序。
环境
- PHP Version 7.1.22
- Xdebug v2.6.0
- PHP2016.2;
- 操作系统:MacOS 10.12.3
Xdebug配置
- 在Web应用运行环境中,打开php.ini文件(例如你的Web程序跑在本地,就修改本地的php.ini,如果你的程序跑在内网机172.16.17.8,那你就ssh到这台机器上,修改这台机器的php.ini)。在文件尾部添加Xdebug配置:
[Xdebug]
xdebug.remote_enable=1
xdebug.remote_host=127.0.0.1
xdebug.remote_connect_back=1
xdebug.remote_port=9001
xdebug.remote_autostart=1
xdebug.idekey=phpstorm
用到的最多的配置就是以上几个,对于这几个的配置解释如下:
- remote_enable
决定xdebug是否开启远程调试模式,在使用Remote Debugging的时候必须打开; - remote_host vs remote_connect_back
由于这两个配置项有紧密联系,所以放在一起讲。- 首先,如果你指针对单个调试用户,比如就你自己调试,你可以将remote_host设成你的Web程序运行的ip,remote_connect_back的值不设置或者设置为0(你不设置默认也是0)。这样Xdebug每次调试的时候会固定连接remote_host指定的ip;
- 但是如果你支持的是多人调试,明显设置一个remote_host是没办法的。这个时候就可以用remote_connect_back=