首页 > 解决方案 > XDEBUG_SESSION 不传播页面更改

问题描述

一段时间以来,我一直在 Windows 中使用 Netbeans 成功地远程调试我的 Linux 网页 (php)。我最近一直在尝试设置一个新的 Ubuntu Linux 机器并在其上安装了最新的 NetBeans (11)、Apache2、PHP7.3 和相同的 php 代码,我遇到了一些奇怪的事情。

Xdebug 肯定是有效的。

我设置“在第一行停止,它在“index.php”中停止。该文件立即重定向(header('location:Users/login.php'))到“login.php”。它再次在第一行停止。此外,我可以在该文件中设置断点,它们是服从 - 一切看起来都很好。“login.php”中的表单会调用自己,直到当控制权传递给“Start.php”时验证用户。它再次停在第一行。Start.php最初只是提出一个下一步中的菜单和控制是通过设置适当的参数(取决于菜单选择)从 Javascript 回调到自身。所以操作将类似于:

$(location).prop('href', rooturl+'/Start.php?Database=".MUSICDB."');

在此重定向之后,不再观察到断点(包括在第一行停止)。这与我在之前的设置中使用的代码完全相同,并且可以继续正常工作。它似乎已经失去了关于它处于调试会话中的任何知识。

任何线索可能会发生什么?

谢谢

标签: phpnetbeansxdebug

解决方案


我发现了问题......

该项目在新 m/c 上设置为从 localhost/index.php 开始,但变量“rooturl”返回 IPaddress/index.php。因此系统认为它去了别的地方,即使它实际上去了正确的地方。在旧系统上,我将项目设置为从 IPaddress/index.php 开始。


推荐阅读