【问题标题】:Fatal error: Allowed Memory size of 67108864 in opencart致命错误:opencart 中允许的内存大小为 67108864
【发布时间】:2014-08-02 10:57:02
【问题描述】:

我正在使用 opencart。在我访问 CATALOG>PRODUCTS 时的管理页面中(我有 73 个产品 - 我总共有四个页面)。当我访问我的第二页时,它显示以下错误

Fatal error: Allowed memory size of 67108864 bytes exhausted (tried to allocate 4000 bytes) in /home/justborn/public_html/system/library/image.php on line 34

但是,我可以访问第一页、第三页和第四页。我已经在我的 .htaccess 文件中尝试过这个解决方案 (Allowed memory size of 67108864 bytes exhausted (tried to allocate 4459414 bytes) in writing an xml file)

php_value memory_limit 128M

但是,它返回 500 Internal error.. 我该如何解决这个致命错误: Allowed Memory size of 67108864 ?

【问题讨论】:

    标签: php .htaccess memory memory-management opencart


    【解决方案1】:

    内存限制绰绰有余。 脚本中似乎有一些无限循环不会让它终止。 在脚本中查找任何 for、while、do while 循环。 如果上述补救措施不起作用,请分享代码以便进一步检查问题。

    【讨论】:

    • 同时检查数组的使用不当。例如,如果不正确重置,循环中的数组可能会变得非常大。
    • 我找到了解决方案@andrew
    • @Beginner 更改内存限制更像是一个“补丁”。临时修复/解决方案。检测错误代码并修复它,这会更好。您的代码现在可以工作,因为您有特定数量的项目/记录要显示,但是当这些记录成倍增加时会发生什么?
    • @andrew : 这个问题还有其他解决方案吗?
    • @Beginner 就像 anuj.dikshit 和我建议的那样,尝试找出错误的代码实践。首先,正确声明所有变量。在循环结束时,销毁/取消所有不需要的东西。调试此类错误的过程很慢。也许如果您发布一些相关代码,我们可以为您提供更多帮助。
    【解决方案2】:

    我找到了解决办法

    在我的管理文件夹中,我有一个 php.ini 文件

    我已将我的memory_limit = 64M; 更改为memory_limit = 128M;。现在它工作正常.. 我没有收到致命错误。

    【讨论】:

    • 我正在查看您的答案,那是共享主机吗?
    • @utility 号其专用
    【解决方案3】:

    你必须在第 18 行更改 php.ini 文件 memory_limit = 64M;到 64 x 2 = 124 或 64 x 4 = 256 但请稍等询问您的托管服务提供商是否支持更高的限制大小,如果支持,那么它将起作用,否则您正在浪费精力

    【讨论】:

      【解决方案4】:

      在文件管理器中检查您的图像大小:可能有一些大尺寸的图像。

      我有 2.9MB 大小的图片,这给我带来了麻烦。

      现在,缩小尺寸后我已经解决了。

      【讨论】:

        【解决方案5】:

        这是我遇到的同样的问题, “致命错误:opencart system/library/image.php第26行允许的内存大小134217728字节用尽(试图分配8192字节)”

        当我们上传大图像(1.5 MB+ 大小)时会出现此错误,在编辑图像时 Opencart system/library/image.php 尝试加载这些图像,为了加载大图像,它需要更多内存。

        为了解决这个问题,有两种方法。 1. 对于共享主机用户

        1.1 从 cPanel 或 FTP 打开文件管理器到您的网站 1.2 转到“public_html/image/catalog” 1.3 查找大图并从服务器下载并删除这些图片。

        1. VPS - 专用 - 云 - 我们可以管理 php.ini 的服务器

        2.1 在 admin 文件夹中打开 php.ini 文件 2.2 尝试从memory_limit = 64M增加;到 memory_limit = 128M;或更多根据需要。

        这应该可以解决问题。

        我个人建议上传优化图像并使用删除大图像的解决方案 1,这不会在服务器上产生任何负载。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2015-04-22
          • 2023-03-20
          • 2015-09-18
          • 2023-04-03
          • 1970-01-01
          • 2017-08-29
          • 2013-07-22
          • 2015-03-06
          相关资源
          最近更新 更多