关于phpstorm+xdebug调试失败记录

        首先环境是这样的,本地windows开发,远程linux服务器部署服务。服务器处于公网,本地pc机处于局域网。

希望可以在本地phpstorm通过该远程xdebug对程序进行调试。安装软件,服务器上面,php7,xdebug,nginx等等,这些都没有任何问题。本地IDE,phpstorm,google浏览器

插件,也安装没问题。

          这些都没问题了,程序始终进不了断点,老实提示各种五花八门的错误,一一解决。最后还是不行。由于公司服务器有硬件防火墙,对外只开放了web访问端口。于是怀疑xdebug的端口没问访问。后面索性想各种办法解决了这个问题。但依旧不行。后面查看xdebu原理,发现phpstorm的本地TCP监听,远程服务器连接过来,这是不可能的,我公网服务器没发连接到局域网开发机上。看了网上的很多教程,也都是pc机安装虚拟机,前提都是两台机器互联互通的,二不是单通的。这应该也就解释了我一直失败的原因。

          后面又研究了下,可以通过ssh,xshell做隧道,试了一下,还是不行,显示隧道打开,但远程似乎还是连不到本地。而且有个问题,隧道是有端口的,而xdebug用的又是另外一个端口,这似乎也说不清。

          总之搞了一天半没成功,后面也会还会搞,但感觉如果为了使用xdebug而专门pc机安装虚拟机的话,好像没那个必要。目前除了一些赋值的框架需要断点单布理思路,其他的有log足够了。另外我还想到一点,如果开发IDE和服务都放在pc端,不用虚拟机的话,原理上应该也不会成功,应该xdebug总会被一端占用。

            搞了两天记录一下,失败了也应该总结。大家有解决方案可以一起讨论。

展开阅读全文

没有更多推荐了,返回首页