允许的内存大小(无论)字节已用尽 - Windows PHP

允许的内存大小(无论)字节已用尽 - Windows PHP

我一直在尝试寻找解决此问题的建议,但无法找到与我的情况相关的任何信息。

我在一台全新的 Windows 2012 R2 VPS 上运行 PHP 5.6.0。我的 PHP 应用程序最初运行在另一台 2012 VPS 上,在设置了 128 内存限制的情况下运行得非常好。我只是将我的 MySQL 数据库和代码复制到这个新的 VPS,现在出现了“允许的内存大小(无论多少)字节已耗尽”的错误。无论我将限制设置为多少,如果我将其设置为 -1,它都会占用所有内容,并且仍然会出错。

我在网上找到的关于此错误的所有信息都说要么提高内存限制,要么使用仅适用于 LAMP 堆栈的某些调试工具。似乎没有人在 Windows 上使用 PHP 时遇到过此问题。

我该如何调试导致此问题的原因,显然我的应用程序从旧 VPS 复制而来并没有发生改变,因此一定是这个新机器上的 PHP 设置问题,但我无论如何也无法弄清楚。

我尝试过从 5.3.28 到 5.4.24 的旧 PHP 版本。我还检查了出错行附近的代码,但那里没有任何相关内容,有时该行只是一条注释。

如果我打开任务管理器然后加载我的网站,我可以看到“CGI / FastCGI(32 位)”内存使用量迅速上升,直到达到限制,然后我的页面出现错误。

欢迎任何建议。

谢谢

答案1

这里有几个 Windows 工具可以帮上大忙。一个是下载,我很快就能找到的唯一链接来自 CNET,所以我认为你可以信任它,它是一个名为 PROCMAN(或进程管理器)的 Microsoft 程序进程管理器

另一个工具是 Server 2012 中任务管理器内置的资源监视器,它比 Server 2008 有了很大的改进,可以详细了解服务器上发生的情况,包括内存使用情况。

相关内容