如何使用phpstorm和Xdebug设置远程调试

时间:2014-10-08 20:58:14

标签: php phpstorm xdebug remote-debugging

我已经看到有关此主题的其他问题/答案,但似乎没有一个问题与我有同样的问题,所以我们走了:

我正在尝试

我使用phpStorm 8开发PHP网站(在此特定情况下为CakePHP 2.5.1)。我在我的计算机上有一个网站副本,在那里进行任何更改,并通过集成的FTP工具将新版本上传到生产服务器。到目前为止,一切都非常简单,没有任何问题。

现在我想开始使用Xdebug来使用生产服务器调试网站(PHP 5.3.28),所以我尝试使用phpStorm和Xdebug设置远程调试。

到目前为止我做了什么

我在生产服务器上安装了Xdebug 2.1.3,似乎正在运行。为了测试我已经完成了this other SO question中推荐的内容,所有这些都可行。

php.ini中的配置如下:

zend_extension="/usr/local/src/xdebug-2.1.0/modules/xdebug.so"

xdebug.profiler_enable='0'
xdebug.profiler_enable_trigger='1'
xdebug.profiler_output_dir='/home/username/debug'
xdebug.remote_enable='1'
xdebug.remote_connect_back ='1'

我没有设置remote_port变量,因为我对默认端口(9000)没问题。另外,我没有设置remote_host IP,因为我使用remote_connect_back选项允许多个IP,如here所述。

我还尝试了两种不同的方法来设置这一切:

  1. 我关注了this Zero Configuration tutorial,但是在第7步我从未得到传入连接对话框。

  2. 我也跟着this different tutorial但是在将XDebug与PhpStorm集成步骤中,我没有从调试器下拉列表中选择选择XDebug <步骤3中的/ em>选项

  3. 我需要什么

    如果有人可以帮助我弄清楚我错过了什么或做错了什么就会很棒!

1 个答案:

答案 0 :(得分:1)

我会将此添加到评论中,但没有所需的代表。

您是否在项目中正确设置了首选项?您是否能够配置和验证部署服务器(在部署下)?

之后,在PHP&gt;下设置服务器;服务器并验证它。

不要忘记检查主机上的防火墙。

确保您可以在没有PHPStorm的情况下使XDebug正常工作,然后绕回并整合它。

这些是我用于CLI项目的php.ini设置,而不是驱动程序路径:

xdebug.remote_enable = 1
xdebug.remote_connect_back = 1
xdebug.remote_autostart = 1
xdebug.remote_host = 192.168.100.1

最重要的是,听听LazyOne。指定远程主机。并且不要在生产设备上运行调试器。花一些时间学习虚拟机。我的建议是查看VirtualBox,Vagrant和SaltStack。这些工具结合使用,可以让您在尽可能接近生产的环境中调试代码,而不会增加调试工具所带来的负担和风险。