上传文件 mimeType 错误

创建于1个月前 / 更新于1个月前 / 阅读153次
#积跬步#PHP

问题描述

上传文件时,服务器无法正确识别文件的媒体类型,即 mimeType 错误。

分析过程

初步分析

在本地上传一个 5m 大小 mp3 的音频文件,打印出 dump($request->file) UploadedFile 对象,如下所示。可以获得正确的 mimeType 。

部署到服务器上之后,打印相同的 UploadedFile 对象,如下所示。不能获得正确的 mimeType 。可看到得到的是 application/octet-stream 类型,并不是预期的 audio/mp3 类型。

进一步分析

在控制器中 dump($_FILES),看到如下结果。

错误码为1,就代表了上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值,可参考手册

解决问题

在 index.php 文件中 echo phpinfo(),访问页面后可看到配置文件的路径。

定位了配置文件的位置,那么把文件中的 upload_max_filesizepost_max_size 改大一些即可。

独奏团
青风百里 编码和设计