我们有一台相当繁忙的灯泡服务器,CPU使用率在高峰时段徘徊在90%左右。我们遇到了间歇性的问题,即从Web表单上传文件失败。它似乎只发生在较大的文件(超过一个mb)上,并且它似乎比其他用户更多地影响一些用户。我们已经完成并检查了PHP ini max上传大小,执行时间和文件夹写入权限等明显的内容。此外,该网站工作了一年没有像这样的麻烦,它突然开始(我们不认为任何我们的应用程序PHP将导致这。)
我们已经看过Charles Proxy中发生了什么,它显示上传发生(发送的文件大小会定期增加),直到它停止发送数据为止。浏览器只显示正在进行的旋转进度,但您可以等待20分钟,不会发生任何事情,或者报告超时。
有谁知道为什么上传可能会间歇性地失败?我唯一的猜测是,它可能与服务器流量有关,就像apache过早关闭该连接一样。
答案 0 :(得分:1)
如果服务器上的负载很高,那么在尝试上传文件时,脚本可能会超时。你能否就问题提供更多具体细节?我认为PHP脚本默认有30秒超时,这意味着如果脚本没有完成,即在该时间范围内上传文件,那么脚本将超时,上传将失败。
好像该网站工作了一年多,现在流量已经增长到服务器负载开始的程度,然后由于流量和负载增加,脚本可能会超时在服务器上。