0

我有 2 个大小为 24.7kb 和 11mb 的 mp3 文件。

当我尝试上传较小的文件时,我没有收到任何错误。

当我尝试上传更大的文件时,出现错误。在萤火虫中,我看到类似

NetworkError: 404 Not Found - http://domain.com/application/form/%3C!DOCTYPE%20HTML%3E%3C!--%5Bif....

在检查并解析“form/”之后的字符串后,它似乎是您所在网页的标记。

知道为什么会这样吗?

附言

  • 我检查了我的 PHP.ini 和 Expression Engine 的文件上传首选项,并确保我的最大文件大小限制超过 10mb(使用 20mb)。

  • 我将 ExpressionEngine 用于我的框架,将 Safecracker 用于我的表单

  • 在 Mac 上,标记字符串似乎显示在 DOM 中的某个位置,您可以在页面中看到它。我在 Firefox 或 Chrome 中看不到它

4

2 回答 2

13

您可能希望检查的是您的 XSS 设置。在Admin-> Security and Privacy->下Security and Session Preferences,设置以下内容No并再次测试您的上传:

Apply XSS Filtering to uploaded files?

它可能没有任何影响,但我见过一些 MP3 和 PDF 文件由于 XSS 过滤而导致一些非常随机的结果的情况;当然值得排除。

于 2012-10-26T09:05:41.300 回答
4

可能仍然是服务器问题,而不是特定于 EE 的问题。我将首先检查 php.ini 中的以下设置(除此之外upload_max_filesize,您听起来好像已经升级了,大致按以下顺序:

max_execution_time设置脚本在被解析器终止之前允许运行的最长时间(以秒为单位)。我认为最有可能的候选者是这个,因为在上传或上传后处理过程中很可能超过了这个值。PHP 5.3 中的默认值为“30”

post_max_size(必须大于upload_max_filesize)。设置允许的发布数据的最大大小,也会影响文件上传。PHP 5.3 中的默认值是“128M”,但一些主机会大大降低它。

memory_limit 设置允许脚本分配的最大内存量(以字节为单位)。不太可能是这个,因为你几乎肯定会得到一个 PHP 错误,但值得检查完整性。PHP 5.3 中的默认值为“8M”

于 2012-10-26T07:54:28.393 回答