0

我们在 Magento 管理员中添加了一些产品并上传了一些产品图片。之后我的产品列表页面是空白的。所以我检查了我的 error_log 文件,我看到了以下错误。

PHP Fatal error:  Out of memory (allocated 190578688) (tried to allocate 7896 bytes) in /public_html/lib/Varien/Image/Adapter/Gd2.php on line 44

所以我禁用了所有最后添加的产品。清除缓存。重新索引,启用缓存。

我的内存限制 = 512M

这到底是什么。任何人有解决方案,请发布它。

4

3 回答 3

4

190578688 字节为 181 MB。这意味着要么

  1. 您的服务器受到物理 RAM 的限制。您可以在 php.ini 中设置任何您喜欢的内容,但操作系统无法使用 RAM 并不重要

  2. 某些东西(.htaccess、ini_set 调用、不同的 php.ini)覆盖了您设置的 512 MB

  3. 您在日志中看到的错误与另一个问题有关

要检查 #3,请在 中打开开发者模式index.php,并将display_errorsini 文件设置为“1”,然后尝试加载您的产品页面。这应该将您的错误直接输出到浏览器。

于 2012-05-02T07:06:08.897 回答
1

这似乎是家常便饭。我们有一家在弱服务器上运行的商店。每页大约有 30 个“大”缩略图,大约 60 个“小”缩略图和大约 90 个大图像。添加 5-10 个产品后,我们遇到了同样的错误。

wodoo-magic 之一是刷新页面,直到服务器上的用户数量减少,并且希望 PHP 有足够的内存来更改图像的大小。大声笑:D

更好的解决方案是将图像的来源更改为最差的质量,这样 PHP 就不会与大型 JPEG 或 PNG 作斗争。或者在上传到所需大小之前调整图像大小。

最好的解决方案可能是编写一些 cron-walker,它检查调整大小的图像,如果缓存中没有这样的图像,它就会成功。

于 2012-05-02T06:38:23.923 回答
0

删除目录中大于 350Kb 的图像。

同样在系统/配置/常规/设计用于水印的图像并以 jpg 格式上传优化图像。这对我有用!

于 2016-01-07T08:04:14.740 回答