我们在已移动到运行 Cloud Linux 的服务器上的站点上使用旧版本的 TinyMCE (MoxieCode) 的 ImageManager。
不幸的是,我们的主机没有通知我们每个帐户有 1,048,576 KB 的硬虚拟内存限制,这在以前的服务器上不存在。
这听起来很多,但 ImageManager 现在随机产生内部服务器错误 500,并且每六个缩略图中只有一个随机选择成功加载。
在服务器错误日志中,我发现以下消息非常频繁地重复出现,再次随机出现在不同文件夹中的不同 index.php 中,主要在图像管理器/流文件夹中,但也在语言文件夹、js 文件夹和 rpc 文件夹中:
无法分配内存:无法创建子进程:/opt/suphp/sbin/suphp
你瞧,如果我刷新当前正在刷新 ImageManager 的网站的 CPanel 页面,我可以看到虚拟内存使用量已达到 1,048,576 KB。(通常它远低于其中的 10%。)
我有点困惑为什么加载一个主题、一些样式表、一个语言包和六个缩略图会需要这么多的内存。
特别是我从 phpinfo 中可以看到 output_buffering 设置为 0,并且在 ImageManager 代码中的任何地方都没有调用 ob_start。
我想也许缩略图每次都是从头开始创建的,而不是从 mcith 文件夹中加载的,但事实并非如此,从缩略图文件上的日期可以看出。
事实上,如果我删除缩略图,事情就会完全挂起(thumbnail.auto_generate 设置为 true)。
当然,我们可以升级到我们在其他网站上使用过的最新的 ImageManager(现在称为 MoxieManager),并且工作正常,但是由于用户界面和会话身份验证发生了重大变化,这将涉及大量工作,包括编码并重新培训并不真正想要升级的客户。
如果有人对如何解决这个问题有任何想法,将不胜感激。