全国服务热线:18271592020
资讯

关于长亭空间

超值服务提供卓越产品

   
  
  
新闻公告 News
   
zblog切换主题后打开显示错误:Allowed memory size of 123456 bytes exhausted (PHP内存溢出)
来源: | 作者:chang | 发布时间: 2024-02-11 | 32 | 分享到:

如果你的zblog安装了一个新的主题,并且这个主题支持显示文章缩略图功能,打开首页或列表提示:Allowed memory size of 123456 bytes exhausted (tried to allocate 1234 bytes) 这种错误,那么就说明问题是:Allowed memory size of (PHP内存溢出)错误

简单来说,你某个文章图片过大或列表页图片需要裁切的缩略图过多,可能导致服务器内存溢出,导致的错误!

zblog版主隔壁老李在论坛提供了方法:

注意:本方法仅针对缩略图生成造成的内存溢出(调试模式下含有thumb.php字样)

带有自动生成缩略图功能的主题,因为次打开页面会批量生成此页面所有的缩略图,部分站点会出现PHP内存溢出错误,此错误多见于有大量文章的采集站点。报错信息类似:Allowed memory size of 123456 bytes exhausted (tried to allocate 1234 bytes)。

新解决方案:

打开:

zb_system/function/lib/thumb.php

查找(大约414行):

PHP
imagefill($this->tmpRes, 0, 0, 0xffffff);

将其改为(注释或删除):

PHP
//imagefill($this->tmpRes, 0, 0, 0xffffff);

zblog切换主题后打开显示错误:Allowed memory size of 123456 bytes exhausted (PHP内存溢出)

回到出错页面看是否解决,如果问题仍未解决,则继续参考下面旧方案~~↓↓↓↓↓


下面是旧方案~~↓↓↓↓↓


报错可能的原因及解决方案:

1.文章内图片体积巨大,超过memory_limit限制。解决:压缩图片

2.含有大量的置顶文章,导致列表页一次性加载几百篇文章同时生成缩略图。解决:取消大量文章置顶,缩略图生成完后可以再打开

3.PHP设置的memory_limit太小,解决:修改PHP配置,加大memory_limit(这亦是解决方案,只要内存够大,上面的两条问题都不是问题)

4.另一种可能有效的解决方案:在网站设置,页面设置中将:“列表页显示文章的数量” 调小,多翻几页等缩略图生成完毕后再改回来。


附宝塔面板修改 PHP memory_limit 步骤:

zblog切换主题后打开显示错误:Allowed memory size of 123456 bytes exhausted (PHP内存溢出)

zblog切换主题后打开显示错误:Allowed memory size of 123456 bytes exhausted (PHP内存溢出)

以上两种方法基本能解决缩略图导致内存溢出的问题,如果解决不了,那么就去排除,可能是某个列表中某篇文章中的图片质量过大,导致缩略中出错,此时可以删除或替换这个图片来解决问题,或主题如果支持关闭缩略图裁切功能,那么直接使用原图可以解决问题。