【问题标题】:PHP message: PHP Fatal error: Allowed memory size of 134217728 bytes exhaustedPHP 消息:PHP 致命错误:允许的内存大小为 134217728 字节已用尽
【发布时间】:2015-11-16 08:51:54
【问题描述】:

我知道这个问题已经被报告过很多次了,但是在学习了一些教程之后我仍然无法解决这个问题。

我已经按照wordpress 站点的说明在 wp-settings.php 下尝试了以下代码:

define('WP_MEMORY_LIMIT', '256M');

我还增加了 php.ini 中的 memory_limit:

memory_limit = 256M

但我想知道为什么它仍然抱怨 134217728 字节的值。由于我已经将值增加到 256MB,因此错误应该返回如下:

PHP: Fatal Error: Allowed Memory Size of 268435456 Bytes Exhausted

我可以通过运行phpinfo()来验证,重启php5-fpm甚至nginx后memory_limit已经是256M了。

任何人都可以对这个问题有所了解吗?

【问题讨论】:

  • 是的。我已经重新启动了 php5-fpm。实际上我可以看到值已经是 256m 而不是 128m。

标签: php nginx


【解决方案1】:

错误是:允许的 256MB 内存大小已用尽。您的应用需要更多内存(256MB 对于网站来说非常非常多),但为什么呢?你必须做一些研究,因为这似乎是一个更深层次的问题。最好检查一下哪个插件占用了这么多内存。

安装插件来检查/监控资源的性能:

  • P3 插件性能分析器
  • 内存查看器
  • 调试栏

因此您可以检查插件的资源(cpu、内存等)。更多详情:http://www.stumiller.me/how-to-monitor-and-reduce-wordpress-memory-usage-by-plugins/

【讨论】:

    【解决方案2】:

    您的memory_limit = 256M 数量仍然很少。尝试更大的东西,例如 ini_set('memory_limit', '512M'); 如果 512M 抛出致命错误 go 或 1024,但请记住,这可能不是最好的做法。

    使用 webgrind 安装 xDebug 并分析您的应用。

    【讨论】:

      猜你喜欢
      • 2015-07-06
      • 2017-11-15
      • 2011-02-23
      • 2016-04-13
      • 2017-08-26
      • 2016-12-11
      • 2017-01-05
      • 2016-07-12
      • 1970-01-01
      相关资源
      最近更新 更多