有一个非常复杂的问题,关于它的信息很少。好吧,我有一个人们上传文件的网站,然后这些文件进行64位编码并发送到另一个网站。第二个站点保存文件,然后为该文件添加数据库记录。在这个过程的某个地方,大约有八分之一的文件正在丢失所有内容。
这个系统已经运行了大约5个月,这个错误只出现在上个月,与服务器一起移动。与文件没有任何共同之处,例如扩展或源,没有任何重要的时间,并没有记录PHP错误。我有失败的文件的副本,当我尝试上传它们时,它们工作正常。
第一个网站不会通过一个空白文件,所以它必须发生在第二个网站,我相信也许我错过了一个导致这个问题的php配置选项。为了彻底起见,这里是保存文件的代码:
$fileName = time() . ($id->count + 1) . '-' . $this->post['jobId'] . $this->post['fileType'];
file_put_contents(DIR_TMP . "cvs" . DS . $fileName, base64_decode($this->post['cv']), FILE_APPEND);
有问题的服务器是Linux CentOS 6 64位。
总而言之,这个问题在服务器移动后开始,只影响大约1/8文件,并且有问题的文件不会一直失败。文件扩展名或计时中没有模式(我没有看到同时处理多个文件因此我认为服务器没有被重载)并且没有记录php错误。
任何帮助都会非常感激,但很少有人能够继续工作!
答案 0 :(得分:0)
好的找到了答案,最终设法跟踪文件所采用的路线,并且它们来自该网站的先前版本。这个故事的寓意是在处理一个白色标记的网站时,请记住该网站的版本在哪里!