XMLHttpRequest在文件大于几KB时会失败

3
我们有一个文件上传脚本,使用XMLHttpRequest的send()函数向处理程序的php脚本发送进度信息。它已经成功运行了约2年时间,一直没有问题。
昨天,无论用户使用什么浏览器/操作系统,任何超过10KB大小的文件都无法上传(我们没有修改任何代码)。 php.ini文件昨天被修改了,但据我所知唯一的修改是添加了这一行:
"zend_extension = /usr/local/lib/php/extensions/no-debug-non-zts-20090626/xdebug.so"

我们已经删除了那行代码,认为它可能导致了问题 - 但上传问题仍然存在。

php.ini中是否有可能导致这种行为的设置?

附加信息:检查apache日志,上传似乎是成功的 - 不知何故回调没有起作用,而是收到404错误。


2
请在您的PHP文件中检查post_max_sizeupload_max_filesize - undone
你是如何检查 readyState 的呢?如果你的条件语句是 if(request.readyState == 4 && request.status == 200){/*then you run your code here*/},那么代码将不会执行。当然,前提是 var request = new XMLHttpRequest; - StackSlave
在调试过程中,我设置了一个onreadystatechange处理程序来将readyState值记录到控制台。 - Joshua King
请注意,在您想要激活的php.ini行之前不要加分号。 - StackSlave
你有进行任何类型的URL重写吗? - undone
显示剩余7条评论
1个回答

1

在检查失败尝试期间的日志后,我们确定这触发了Mod Security。我们不得不增加允许上传的文件大小在Mod Security配置中。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接