PHP上传宽度大于2000像素的图像会导致崩溃

时间:2011-12-03 17:14:05

标签: php cakephp file-upload upload

当用户将图像上传到我的服务器(共享服务器)时,如果文件的宽度大于>,则服务器会发出错误。 2000像素。它与文件大小没有关系 - 我可以上传2000宽度的1 MB文件但它仍然崩溃。如果我以1000像素上传一个1 MB的文件,它可以正常工作。

这是我得到的错误。 致命错误:允许的内存大小为67108864字节耗尽(尝试分配20000字节)

我正在使用SimpleImage插件(http://www.white-hat-web-design.co.uk/blog/resizing-images-with-php/)和CakePHP框架。

我同时阅读了PHP File Upload greater than upload_max_filesize and errorLarge File Upload Errors with PHP,但都没有真正解决这个问题。

有人见过这个吗?有什么想法吗?

3 个答案:

答案 0 :(得分:3)

你可能会达到内存限制......

尝试增加“php.ini”

中的memory_limit指令

在php脚本的顶部添加以下内容,

ini_set('memory_limit', '128M');

答案 1 :(得分:0)

如果你想使用php将大小超过2000px的图像上传到数据库中。 创建一个表,然后使用BLOB-Binary Lodge Object将图像存储在其中 使用file_get_contents获取图像的内容,然后存储它。 比服务器不会崩溃

答案 2 :(得分:0)

将此添加到接收上传的控制器顶部

ini_set('memory_limit', '256M');

根据需要更改限制值。