0

我正在尝试使用 php 上传文件。我可以上传最大 3 mb 的.zip 文件。但不能上传> 3mb的文件。提交html表单需要很多时间。我已经使用以下代码检查了上传和内存详细信息。

$max_upload = (int)(ini_get('upload_max_filesize'));
$max_post = (int)(ini_get('post_max_size'));
$memory_limit = (int)(ini_get('memory_limit'));
$upload_mb = min($max_upload, $max_post, $memory_limit);

它给出的输出为

max_upload=10
memory_limit=64
upload_mb=10

请帮我找出解决方案。

4

4 回答 4

1

它也可以是网络服务器,请参阅 Apache 的 LimitRequestBody 或 nginx 的 client_max_body_size

另一个原因是代理(透明代理?)。您可以通过要求其他人尝试上传文件来进行测试

于 2012-06-21T13:24:29.647 回答
0

因为它需要很多时间可能是你超过了 30 秒超时

您可以通过添加来更改它

喜欢

    set_time_limit(60);

来自 http://php.net/manual/en/function.set-time-limit.php

并运行此代码

 <?php
     phpinfo();  ?>

运行该文件以获取您的系统设置(搜索 upload_max_filesize 等);

于 2012-06-21T13:34:44.047 回答
0

我对之前的 PHP 大文件上传问题给出了相同的答案,但答案仍然适用:

对于大文件,如果您不想处理配置服务器设置(特别是如果您在共享主机或其他无法让您完全控制服务器的主机上),一种可能的解决方案是将上传到第三方服务。

例如,您可以让表单直接发布到 Amazon S3 ( http://s3.amazonaws.com/doc/s3-example-code/post/post_sample.html ) 或使用Filepicker.io 之类的服务

全面披露:我在 Filepicker.io 工作,但想帮助那些处理大文件上传问题的人

于 2012-06-21T23:04:14.037 回答
0

您是否检查过脚本的超时时间?默认情况下是 30 秒...也许这就是限制...

于 2012-06-21T13:19:19.143 回答