PHP不允许我上传16MB文件

时间:2013-09-04 03:54:23

标签: php joomla

我正在尝试上传16 MB的文件,但我的应用程序没有上传这个17 MB的文件,根据我的PHP.INI,我可以上传到20 MB。

我也没有收到任何相应的错误上传失败。

当我点击上传按钮时,页面加载,但没有任何反应。

没有错误,没有。

在应用程序顶部,我添加

error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);

如何捕获此错误的错误。

1 个答案:

答案 0 :(得分:1)

除了您已设置的PHP ini max文件大小外,还有更多相关变量需要检查:

upload_max_filesize = 24M
post_max_size = 120M
max_execution_time = 6000

post_max_size是您的浏览器发送的帖子的总大小:因此它是附加到表单的所有文件的总和。最大执行时间也应该考虑文件大小,因为大多数ADSL​​连接上传较慢,一些用户上传15mb文件可能需要5分钟。

不要夸大:这会让你受到攻击/浪费你的带宽(那里没有太大的伤害)。

根据错误,您应该让他们登录您的Apache错误日志:如果文件大小的总和超过post_max_size,则错误将如下所示:

[Fri Jul 05 17:38:09 2013] [warn] [client 157.16.35.224] mod_fcgid: HTTP request length 5005313 (so far) exceeds MaxRequestLen (5000000), referer: https://www.example.com/sef/path/rads/post/1?catid=1

最后,确保磁盘空间和用户配额不会耗尽。您将能够从apache error_log确定导致上载失败的原因。