【问题标题】:Mime type "application/CDFV2-corrupt" for Outlook msg file using PHP's finfo_file使用 PHP 的 finfo_file 对 Outlook msg 文件进行 MIME 类型“application/CDFV2-corrupt”
【发布时间】:2015-04-21 05:03:20
【问题描述】:

我对 Outlook msg 文件做了一些研究,我预计 mime 类型是 application/vnd.ms-outlook。但是当我使用finfo_file() 时,我得到application/CDFV2-corrupt。从那以后,我在两个不同的服务器(我的本地 Centos 盒子和我的 Centos VPS)上尝试了它并得到了相同的结果。有没有人尝试过这段代码,你得到的结果和我一样吗?如何使用 PHP 获取 msg 文件的 mime 类型?

<?php
$finfo = finfo_open(FILEINFO_MIME_TYPE);
$filetype=finfo_file($finfo, 'test.msg');
echo($filetype);
?>

输出:

application/CDFV2-corrupt

【问题讨论】:

  • 我看到有人发布了一个答案,但点击它并已被删除。任何帮助或想法将不胜感激!
  • 我还发现了一些旧的 XLS 文件,它们提供了相同的 MIME 类型。显然它代表“复合文档文件 V2”,旧的 XLS 文件使用该文件格式。文件实际上稍微损坏或不符合要求(可能在元数据中),或者 libmagic 在读取格式的某些变体时存在错误。我在 Ubuntu 14.04.3 LTS 上。

标签: php outlook mime-types fileinfo msg


【解决方案1】:

试试application/octet-stream。只要文件扩展名正确(.MSG)Outlook就可以打开MSG文件就好了。

【讨论】:

  • 谢谢。我检查 mime 的部分原因是为了验证文件是否如其所见。
  • MIME 类型将由电子邮件客户端或浏览器检查,但在 Windows 端打开它的实际应用程序只会访问文件名(以及扩展名)。
  • application/binary 不是有效的 MIME 类型,应为 application/octet-stream
猜你喜欢
  • 2011-09-29
  • 2016-08-18
  • 2012-03-16
  • 1970-01-01
  • 2013-08-13
  • 2023-03-24
  • 2015-09-13
  • 2019-09-05
相关资源
最近更新 更多