PHP Xdebug + PhpStorm调试远程服务器代码
1.服务器(linux centos)安装xdebug
pecl install xdebug
注意看安装完成之后会显示 debug.so 的路径,记录下来
2.配置 php.ini
如果不知道php.ini在哪,可以搜一下
find / -name "php.ini"
加入xdebug配置
zend_extension="/usr/local/php/lib/php/extensions/no-debug-non-zts-20170718/xdebug.so" xdebug.remote_enable = 1 xdebug.remote_host = 使用PhpStorm的那个机器的公网ip,可在(https://ip.cn/)查 xdebug.remote_connect_back = 1 xdebug.remote_port = 9001 xdebug.idekey="PHPSTORM"
重启php-fpm,若不知如何重启可参考(https://www.awaimai.com/2391.html)
3.用phpinfo();验证xdebug扩展是否安装成功,若安装成功可以看到如下图所示
4.设置debug端口,该端口与第2.配置(xdebug.remote_port)的一致
5.设置PhpStorm中的Servers
6.设置DBGp proxy
7.安装 Chrome xdebug 扩展(可能开代理),方便开关远程调试
https://chrome.google.com/extensions/detail/eadndfjplgieldjbigjakmdgkmoaaaoc
8.安装 xdebug 扩展后,右击那个虫子的图片,点选项
将IDE key选为PhpStorm的,点Save
9.左击,选Debug,打开debug开关(可能需要先打开需要调试的页面)
打开虫子后变为绿色
10.打开PhpStorm的监听(右上角)
11.打断点,打开页面,看到如下图所示,enjoy!
PS:Debug相关默认快捷键:
F8 - 步过。继续执行断点后程序,按行执行,按一次执行一行
F7 - 步进。进入到断点执行的内容程序
ALT + F9 - 运行到光标处
F9 继续执行断点以后的程序,停到下一个断点处
参考:
https://segmentfault.com/a/1190000011907425
https://www.jetbrains.com/help/phpstorm/configuring-xdebug.html
https://confluence.jetbrains.com/display/PhpStorm/Browser+Debugging+Extensions