【发布时间】:2017-02-04 10:35:48
【问题描述】:
所以我这几天一直在寻找解决这个问题的方法,但没有成功。
我目前正在为 Wordpress 开发一个网站,该网站利用用户上传的高分辨率图像。由于 NDA 的原因,我不能透露代码或项目的性质,所以我会尽可能地描述,尽管我知道这可能很困难。
我在上传非常大的图片(6500x6500 像素,或 3MB)+ 时遇到了关于 Wordpress 调整图片大小的问题。通常,对于较小的图像,Wordpress 能够毫无问题地将这些上传的图像调整为各种较小的尺寸,但似乎在某个点上,无论是文件大小还是像素尺寸,Wordpress 都无法执行这种调整大小。
当我们上传一张图片时,我们会将其大小调整多达 22 次(取决于用户输入和要求)。保持原始图像分辨率对于项目的后期阶段也非常重要,因此无论是在上传之前还是在上传期间,都不能简单地压缩或缩小原始图像。
我对 .htaccess 和 php.ini 文件进行了更改,以允许更大的文件和上传大小以及执行时间,但我怀疑问题出在内部 Wordpress 函数上。可能是 add_image_size()?
我将尽我所能提供有助于解决此问题的其他信息。
【问题讨论】:
-
您可以访问 PHP 错误日志吗?当操作失败时,图像调整大小功能将发出警告。最常见的 PHP 进程在处理大图像时会超出内存限制。您可能需要增加 memory_limit,请参见此处:php.net/manual/en/ini.core.php#ini.memory-limit
-
在内存中,未压缩的 6500x6500 RGB 图像约为 127 MB。
-
失败怎么办?有什么问题?
-
大家好,感谢您的快速回复。检查日志确实显示内存已被超出。在@gre_gor 发表评论后,我将限制的大小增加到了 512 MB,问题就消失了。感谢您的帮助!
-
@Grinneh 我添加了一个答案,所以你可以接受它。
标签: php wordpress image .htaccess image-resizing