使用PHP进行大型文件上载错误

我有幻灯片显示图片上传,用户不断上传2MB以上的文件.此大小的文件工作正常,但超过该大小的文件会导致浏览器超时.

这是我的PHP ini设置:

>最大内存分配:12M
>最大文件上传大小:10M
>最大HTTP帖子大小:10M
>最长执行时间:60
>最大输入解析时间:120

这些设置在配置文件中,我可以直接更改它们.使用PHPinfo()时会显示更改.

我正在运行apache服务器和PHP 4.3.9(客户端的选择,而不是我的). apache服务器的请求限制设置为认值,我相信大约2GB左右?

当我使用firebug网络监视器时,看起来我没有收到服务器的完整响应,尽管我对使用此工具的经验不太熟悉.事情似乎在43秒左右超时.

我可以在网上找到的所有帮助都指向上面的设置作为罪魁祸首,但所有这些设置都远高于这个2MB文件和43秒超时.

有什么建议我可以从这里解决这个问题?

以下是PHPinfo()的相关PHP ini设置.如果我需要发布,请告诉我.

> file_uploads On On
> max_execution_time 60 60
> max_input_nesting_level 64 64
> max_input_time 120 120
> memory_limit 12M 12M
> post_max_size 10M 10M
> safe_mode关闭
> upload_max_filesize 10M 10M
> upload_tmp_dir没有值没有值

解决方法:

确保在PHP.ini中激活了错误报告:display_errors = On;这可能会让你知道发生了什么.生产服务器通常(应该)禁用错误报告.

我最近遇到了类似的问题,并且增加memory_limit设置对我有用.如果将文件内容读入变量,则每个变量将占用与文件大小相同的内存,从而增加了脚本内存要求.

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...