我的任务是为不同的评估阶段(dev/test/staging/etc)建立一个关于各种环境的网站。
然而,在我们的暂存环境中,似乎有一些差异会阻止 PHP 脚本完成,因此页面永远不会传递到浏览器。
我想知道是否有一种方法可以在断开连接时输出记录某种堆栈跟踪或回溯,或者是否有其他方法可以找出 PHP 在脚本生命周期中的任何给定点到底在做什么?
这是一个 Drupal 站点,因此它涉及很多我不熟悉的代码,并且可能需要几个小时才能die;
在整个过程中散布命令以查看脚本加载到的位置。
我知道我可能应该查看环境中的差异,但是所有环境都应该具有非常相似的配置(Ubuntu 11.04),并且登台环境似乎非常乐意为其他 PHP 站点提供服务,而这个特定站点拒绝完成。如果有的话,这个登台站点比其他没有问题的环境有更多的可用资源。
更新:对不起,最后发现了问题。暂存环境位于不允许通过公共 IP 访问自身的 VLAN 上,并且无论出于何种原因(仍然对此感到困惑),它试图将自身作为页面加载的一部分进行访问,并且从未完成请求。为 127.0.0.1 设置主机文件条目可解决此问题。