深圳创络为客户做网站时,经常需要开发下载中心或者附件管理及其他类似的功能,有的时候,客户需要上传几十MB甚至几百MB的文件到网站中,为了提高用户体验,我们通常会对这种超大文件进行切片上传。由于我们长期从事网站开发这个行业,所以不断的积累经验,总结教训,目前对文件切片上传功能的开发,技术上已经很成熟,而且现在已经很少遇到文件上传失败的情况。今天我们将为大家介绍下远程服务器上PHP超大文件切片上传失败最常见的原因。
当用户遇到类似技术问题的时候不需要紧张,请直接联系创络科技获取技术支持。绝大多数情况下,我们已经预见了所有可能出现的问题并做了相应的友好提示,所以,可能用户自己并不知道文件上传的具体错误信息,但是知道大概原因。这些提示信息也将帮助我们的技术同事能够迅速的定位问题并处理问题。上图所示的正是远程服务器上PHP超大文件切片上传失败最常见的原因之一:文件切片上传失败、文件切片大小超过服务器的upload_max_filesize限制。
切片的大概思路是将一个比较大的文件分切为多个相对较小的文件来上传,这样可以有效降低文件上传失败的概率,所有切片文件上传成功后,再在服务器上把所有切片文件组合还原成原来的这个大文件。这样出了可以让上传更稳定之外,还可以突破一些系统对上传的文件大小的限制。以阿里云为例,其默认的upload_max_filesize是2MB,也就是说,我们在网站中文件上传大小最大就是2MB,超过则无法上传。同样的道理,当我们切片后的切片文件大小还是超过了服务器的upload_max_filesize的限制的话,那么就会提示上图所示的错误。因为接口返回文件已经上传,但是服务器上的临时文件夹却没有接收到这些文件,导致无法降临时文件组合并移动到网站上传目录。
知道了问题的原因,就很好解决了,要么修改服务器配置,要么修改源码中切片文件的大小,到此,问题得到有效解决。作为网站建设公司,创络后期还将继续分享网站后台操作使用经验,以及一些常见的问题的解决方案,希望可以帮到大家。