PHP关于大图片上传的相关配置

来源:互联网 发布:天宝软件 编辑:程序博客网 时间:2024/06/06 00:28

昨天在公司后台上传一张15MB的图片,用的是uploadify插件,返回的提示是:未选择到文件,然后同样的功能,传一张500+k的路飞.jpg几乎秒传成功,于是有了接下来一小时多的各种查找。


修复Bug:资源管理栏目,同样大小的图片上传失败,rar或者视频可成功

    经过长时间测试、查找,终于发现:
        起初,将php.ini当中的upload_max_filesize = 30M后,仍旧不成功。报错信息:没有选择上传文件。
        而后,将php.ini当中的post_max_size = 30M后,有了突破性的进展,报错信息变化了,报错信息如下:
            错误信息


            Allowed memory size of 134217728 bytes exhausted (tried to allocate 27780 bytes)


            错误位置


            文件:D:\phpStudy\WWW\general_web\trunk\Apps\Lib\ORG\Image.class.php


            行:189
        最后,几经折腾,终于弄明白,上述报错的原因:
            原来是php.ini中的内存分配的问题,默认php代码能够申请到的最大内存字节数就是134217728 bytes,如果代码执行的时候再需要更多的内存,就会报错了,于是就将php.ini文件中的配置改了一下:
            memory_limit = 128M;将128M改成了256M

        至此,问题终于解决了。30M的上传图片大小限制,应该够用了吧。

小结:

php.ini当中需要配置的3个变量

<pre name="code" class="php">// php.ini当中的相关配置upload_max_filesize = 30Mpost_max_size = 30Mmemory_limit = 256M




0 0