3

我会尽量详细说明情况,但这让我困惑了太久。

我有一个在 Win7 主机上运行的 Ubuntu Server 12.04 来宾。我为 VBox 配置了 2 个 NIC:一个用于与外界通信的 NAT 适配器和一个用于为主机和来宾创建专用网络以进行通信的 Host-Only 适配器。LAMP 堆栈是 Ubuntu Server 12.04 提供的默认堆栈。来宾可以识别 NIC,并且 Host-Only NIC 具有静态 IP 配置。主机称为 192.168.56.1,来宾称为 192.168.56.101。我使用指南进行设置。ifconfig显示两个适配器。我通过 ping 测试了主机是否可以访问,我确实收到了回复。

我的一切工作正常:MySQL、PHP、Apache2、APC、共享文件夹挂载,并且该项目可以访问并尽可能快地加载。

这就是 xdebug 发挥作用的地方。只要我禁用远程调试器或告诉 xdebug 我的远程主机是 localhost,项目就会以不错的速度加载。但是,一旦我告诉 xdebug 远程主机不是 localhost 或者它应该连接回任何请求,页面加载似乎会在最终交付结果之前挂起几分钟。

我使用 Symfony2 开发,它有一个漂亮的开发人员工具栏,这个工具栏实际上告诉我页面加载花了 1174 毫秒。这让我怀疑它可能是 xdebug 和 Apache 玩得不好。以下是我尝试使用 xdebug 的非常基本的配置:

zend_extension=/usr/lib/php5/20090626/xdebug.so

xdebug.remote_enable=on
xdebug.remote_handler=dbgp
;xdebug.remote_connect_back=on
xdebug.remote_host=192.168.56.1
xdebug.remote_port=9000
xdebug.remote_log = /var/log/xdebug.log

对于可能导致此问题的原因,我完全一无所知,非常感谢任何帮助。提前致谢!

4

1 回答 1

4

好吧,它并没有我想象的那么复杂。

Windows 防火墙阻止了该端口。在我认为我允许端口 9000 通过防火墙后,我决定通过完全关闭它来再次检查。低头看:它运行完美。所以我会把这个回复留在这里给遇到同样问题的人:

确保在使用类似结构时允许通过您选择的调试器端口进行通信!

于 2012-06-12T21:37:37.413 回答