在apache windows下使用php7.4时内存分配过高

8cdiaqws  于 2022-11-21  发布在  PHP
关注(0)|答案(3)|浏览(227)

我最近在生产服务器上注意到,这些不太可能的高内存分配尝试的原因可能是什么:

PHP Fatal error: Allowed memory size of 1006632960 bytes exhausted (tried to allocate 51002234388 bytes) in D:\wp\wp-includes\load.php on line 1466

这发生在WordPress(见错误消息),但也在石灰调查。
我在Windows服务器2008上的Windows Apache 2.4.21上运行PHP 7.4.27。
错误是一致的(相同的字节数、相同的脚本、相同的行),并且在服务器重新启动后仍然存在。
奇怪的是,我可以通过简单地将所有脚本文件移动到不同的文件夹来消除Lime Survey安装中的错误。
编辑:现在相同:通过FTP下载D:\wp中的所有脚本文件,创建一个新目录D:\wp,并将所有文件上传到FTP,错误消失了。这是怎么回事?
谢谢你,谢谢你

hmmo2u0o

hmmo2u0o1#

原因很可能与插件有关。
我会检查:

  • wordpress错误日志
  • php错误日志
  • Apache错误日志
  • 服务器错误日志
  • 任何挂起的cron作业。
  • 隔离并调试任何插件DB查询。
  • 是否有任何繁重的报告(数据库生成)

隔离哪个插件,可以通过使用实时备份来完成,并一次删除/禁用一个插件。
增加内存限制可以通过wordpress完成,但可能不会咬,除非在服务器或php级别上配置。

dauxcl2d

dauxcl2d2#

1 -检查PHP 7.4内存限制
(检查php.ini--检查windows中的文件夹配置)
2 -在wp-config.php中插入内存限制
3-在.htaccess中插入内存限制
4 -检查插件。
5 -可能有隐藏的恶意代码文件
(5.1 -查找与文件夹同名的文件。例如:FOLDER = theme(进入文件夹时)有一个文件名为=. theme. php
5.2- 分析您的index.php,wp-config.php或.htaccess(如果它们没有经过授权,请输入代码)
6 -分析日志

eeq64g8w

eeq64g8w3#

现在,过了一段时间,我强烈地猜测是opcache功能导致了错误。也许在更新一些脚本后,确实与opcache中未修改的脚本发生了冲突。关闭opcache确实起到了作用(直到现在:))。

相关问题