我试图使用Uniform Server WAMP软件包(Apache版本2.4.20,PHP版本7.0.8)自己托管一些网页,其中一个是简单的Bootsrap产品组合,另一个是使用WooCommerce和其他插件的基于WordPress的在线商店.
在我重新启动Apache服务之前,基于WordPress的站点会不时停止工作.我发现主要的Apache日志填充了这些错误:
VirtualAlloc()失败:[0x00000008]没有足够的存储空间可用于处理此命令.VirtualFree()失败:[0x000001e7]尝试访问无效地址.
我的商店Apache错误日志充满了这些:
[Tue Aug 23 14:49:59.357235 2016] [:error] [pid 11300:tid 1768] [client 88.119.96.56:52269] PHP致命错误:D内存(分配2097152)(试图分配4096字节) :\ Software\UniServerZ\vhosts\***\wp-includes\pomo\mo.php,第276行,referer:http://***/wp-admin/edit.php?post_type = shop_order
线条不同于268,270和276,而在mo.php中它们看起来像这样:
$entry = new Translation_Entry(); // 268
...
$parts = explode(chr(4), $original); // 270
...
$parts = explode(chr(0), $original); // 276
Run Code Online (Sandbox Code Playgroud)
整个源代码可以在这里找到.
与此同时,我的投资组合页面没有问题.
我增加memory_limit的在php.ini中到2048MB,增加define('WP_MEMORY_LIMIT', '256M');和define('WP_MAX_MEMORY_LIMIT', '512M');对WP-config.php文件,但一周仍至少两次我的网站不能访问,并记录完整的上述消息.
我的网站没有产生太多的流量,服务器有16GB的RAM和半空的512GB SSD,请帮助我理解或找出导致问题的原因,因为当前的日志对我来说很少.
更新1
我在VirtualAlloc和VirtualFree上面找到了一条有趣的线路:
[Tue Aug 23 21:02:40.298272 2016] [:error] [pid 504:tid 1836] [client 191.96.249.54:36032]脚本'D:/Software/UniServerZ/www/xmlrpc.php'找不到或无法找到统计 …