0

有一个表格工作正常(现在仍然如此),但超过一定大小的文件只是在空的 $_FILES 上失败。

我可以上传 10Mb、60Mb 甚至 101MB 的文件,但我真正想要上传的文件是 120MB,而且上传失败,$_FILES 为空。

The php.ini are set:
file_uploads = On
post_max_size = 750M
upload_max_filesize = 500M
max_execution_time = 500
include_path = .:/usr/local/lib/php
auto_prepend_file = config.php

但是最大的文件就失败了。我读过我的 /tmp 目录可能已满,但唯一的 /tmp 目录与 public_html 位于同一目录中,除了 awstats 和 webalizer 之外,这个目录并没有太多内容。

有什么帮助吗?

4

4 回答 4

1

检查此设置max_input_time。它限制了脚本解析数据的时间。

于 2012-10-26T12:31:15.913 回答
1

有人说你memory_limit也需要提高。

应该高于upload_max_filesize

如果您正在运行 suhosin,还有一些选项suhosin.memory_limitsuhosin.post.max_value_length

此外还有max_input_time选项。

也可能有一些代理,如 nginx 或 varnish,它们会阻止上传如此大的文件。

最后在 Apache 中有一个指令:LimitRequestBody

而对于 mod_fastcgi: FcgidMaxRequestLen,FcgidConnectTimeout

您还可以尝试使用 APC 和一些 AJAX 驱动的进度条监控您的上传:http ://www.phpriot.com/articles/php-ajax-file-uploads/3

于 2012-10-26T12:46:56.587 回答
0

您是否在输入文件上传 html 表单中使用“MAX_FILE_SIZE”隐藏字段?

如果使用,请检查此问题。

http://www.php.net/manual/en/features.file-upload.php#74692

于 2012-10-26T12:52:58.777 回答
-2

在你的 php.ini 中设置这些:

upload_max_filesize = 10M
post_max_size = 10M

并检查

memory_limit  

高于 post_max_size

于 2012-10-26T12:28:54.797 回答