在Drupal中使用ImageField上传图像时,“文件不是已知的图像格式”错误

时间:2010-09-06 14:57:42

标签: php drupal

我继承了一个用Drupal构建的站点,将其移动到另一个服务器(从Ubuntu Server 9.10到Ubuntu Server 10.04),现在当我尝试通过ImageField上传图像时,我发现了以下错误。< / p>

  

“160284.jpg”nemtölthetőfel。该文件不是已知的图像格式。

错误的第一个(本地化)部分是“160284.jpg”无法上传。“

我注意到错误的第二部分不正确。它是在filefield_validate_is_image()中生成的,是由$ file-&gt; filepath中引用的文件丢失引起的。

文件权限应该不是问题,因为现在一切都只是777.临时目录也是可写的。

导致错误的原因是什么?

4 个答案:

答案 0 :(得分:1)

问题可能源于PHP需要一些图像库,或者您没有激活所需的图像API模块来处理它。

答案 1 :(得分:1)

几天前解决了。罪魁祸首是缺少fileinfo模块。安装后似乎工作正常。

pecl install fileinfo

答案 2 :(得分:0)

您可能没有安装libjpeg.so,或者没有编译支持GD的PHP。令人困惑的是,Drupal传递的错误并没有暗示这可能是与Drupal无关的PHP问题。

如果安装了Devel,请转到devel/phpinfo并检查“gd”标题下的“JPG Support”行。

如果支持GD但没有JPG支持,请使用--with-jpeg-dir=/usr/lib重新编译PHP,或查看操作系统和PHP版本的手册。如果您在共享主机上,则可能需要打开技术支持票证,要求他们为PHP添加GD JPEG支持。

同样,如果devel/phpinfo下没有“gd”标题,则需要使用'--with-gd'重新编译PHP,或者在共享主机上打开带技术支持的票证等。< / p>

www.serverfault.com的人可以帮助您,如果您在GD支持工作正常方面遇到任何问题,但通常很简单。

答案 3 :(得分:0)

如果您在Apache上遇到问题,那可能比您的drupal tmp文件夹与php文件夹不同。查看http://drupal.org/node/1224998#comment-4762636