我目前正在制作支持更大上传(~50 Mb)的上传脚本,我很快就遇到了问题!我正在使用传统的POST请求,将表单上传到临时位置,然后使用PHP移动它。当然我已经更新了我的php.ini文件,以支持略大于默认文件和大约15 Mb上传的文件!
主要问题是由于我的托管公司。他们让脚本超时 60秒后意味着完成超过60秒的POST请求将在临时文件到达PHP脚本之前死亡,这自然会产生内部服务器错误。
无法在服务器上启动超时(经过激烈辩论)我正在考虑选项。有没有办法碰撞请求或以某种方式刷新它以通知服务器并重置时间?或者有没有超时的替代上传方法吗?
答案 0 :(得分:0)
您可以考虑一些事项。每个都有成本,您需要确定哪个成本最低。
获取新的托管公司。这可能是您最好的解决方案。
设计一个相当复杂的客户端系统,将上传分解为多个块并通过AJAX提交。这很难看,因为它只对绕过主机规则很有用。
我真的研究#1。
答案 1 :(得分:-1)
很难。到目前为止,您最简单的选择是抛弃头脑发热的主机并选择一个真正让您高效的主机。我个人使用TSOHost - 与他们一起待了一年半以上,到目前为止,他们完全没有理由抱怨(甚至没有轻微的烦恼)。
答案 2 :(得分:-1)
你真的确定这是超时问题吗?我的第一个想法......
由于在web服务器php.ini文件中设置了配置限制,transfert失败。您需要更改它或将其设置为脚本中的本地设置
#在您的配置使用的php.ini中找到它 memory_limit = 96M post_max_size = 64M upload_max_filesize = 64M
或直接在你的剧本中
ini_set('memory_limit', '96M');
ini_set('post_max_size', '64M');
ini_set('upload_max_filesize', '64M');