服务器上的 PHP 文件上传将 mime-type 更改为 application/octet-stream

Posted

技术标签:

【中文标题】服务器上的 PHP 文件上传将 mime-type 更改为 application/octet-stream【英文标题】:PHP file upload on server changed mime-type to application/octet-stream 【发布时间】:2015-06-16 05:12:16 【问题描述】:

我有一个文件上传,当我在 localhost 上测试它时,所有的 mime 类型都可以。 (txt, pdf, doc, docx, xls, xlsx)

当我在服务器上测试相同的文件时,它会将所有 mime 类型更改为 application/octet-stream。

php.ini 或其他任何地方有设置吗?

服务器正在使用 WAMP。

PHP 框架网络

【问题讨论】:

请查看此链接以获得帮助和解释:-***.com/questions/12061030/… 但是为什么它在服务器和本地主机上的行为不同? 【参考方案1】:

问题是服务器上的 PHP 中没有 fileinfo 扩展名。 激活后一切正常。

【讨论】:

【参考方案2】:

上面有人提到的答案是 RFC 规范的工作方式。查看Why am I getting mime-type of .csv file as "application/octet-stream"? 了解更多信息。

【讨论】:

以上是关于服务器上的 PHP 文件上传将 mime-type 更改为 application/octet-stream的主要内容,如果未能解决你的问题,请参考以下文章

通过后缀名和MIME-TYPE检查实现文件类型校验

通过带有PHP代码的Web服务器将应用程序上的本地文件上传到FTP服务器

PHP 使用curl获取文件mime-types的函数。

将文件上传到服务器上的不同目录

如何更改文件 mime 类型以绕过 php shell 上传? [关闭]

访问 Apache 的 Mime-Type 到扩展映射