没有固定 IP 如何在 PhpStorm 中进行 Nginx xdebug 远程调试?
在没有固定 ip 的情况下,如何在 phpstorm 中进行 nginx xdebug 远程调试
在外网 nginx 服务器和 phpstorm 开发环境分别位于不同网络的情况下,进行远程调试可能会遇到一些困难。如果没有固定 ip,我们无法在路由器上进行端口映射以将调试信息返回到本地机器。
一种解决方案是使用 gbdpproxy。gbdpproxy 是一个基于 gearman 的调试代理,可以在没有固定 ip 的情况下,在不同的网络之间进行调试。
首先,在 nginx 服务器上安装 gbdpproxy,并配置 php-fpm 监听 gbdpproxy 监听的端口。然后,在 phpstorm 中配置 xdebug 使用 gbdpproxy 作为调试代理。
立即学习“PHP免费学习笔记(深入)”;
以下是配置 gbdpproxy 的步骤:
在 nginx 服务器上安装 gbdpproxy:
apt-get install gbdpproxy
编辑 gbdpproxy 配置文件:
/etc/gbdpproxy.conf
并将以下行添加到文件末尾:
listen = 127.0.0.1:9000
重启 gbdpproxy:
service gbdpproxy restart
然后,在 phpstorm 中配置 xdebug 使用 gbdpproxy:
- 打开 phpstorm | preferences | languages & frameworks | php | debug。
- 在 debugger 部分,选择 xdebug。
在 xdebug 部分,选中以下选项:
在 remote 部分,输入以下内容:
配置完成后,就可以在 phpstorm 中开始进行远程调试了。