适用于Google Chrome的zip文件的Mime类型

时间:2009-05-13 04:05:55

标签: google-chrome mime-types

当我在a Symfony application工作时,我在zip文件的mime类型中发现了一个奇怪的问题。

根据w3school,zip文件的mime类型为application/zip。这也是我所相信的。

但是当我在我的Symfony应用程序中使用IE上传zip文件时,该zip文件的mime类型为application/x-zip-compressed。当我在Firefox中上传zip文件时,该zip文件的mime类型为application/octet-stream

我们都不相信application/zip

最奇怪的行为是Google Chrome。当我在谷歌浏览器中上传一个zip文件时,我无法确定它的正确mime类型。虽然我 但非常确定它是 不是

application/zip   
application/x-zip
application/octet-stream
application/x-zip-compressed

Google Chrome中的zip文件的mime类型是一个空字符串,正如我通过转出返回的sfValidatorFile对象所发现的那样。请注意,sfValidatorFile.type是“”用于zip文件。

但是为jpeg文件返回的sfValidatorFile.type对象是jpeg

在我看来,Symfony或Google Chrome中都存在错误

更多信息:Gmail似乎将zip文件的mime类型解释为Google Chrome中的应用程序/ zip。这是正确的行为。似乎确认这是Symfony的错误。

3 个答案:

答案 0 :(得分:25)

截至目前,Google Chrome中的zip文件的MIME类型为 application / octet-stream 。 :)

答案 1 :(得分:3)

这是Google Chrome的错误而不是Symfony。我对Google Chrome的ZIP mime也存在同样的问题。

我有自己的应用程序用PHP编写。

当您编写echo $_FILES['yournameattr']['type'];时,它会在您上传zip文件时返回空字符串,但是当您上传gif或jpeg文件时,它会返回image / jpeg或image / gif。

我有谷歌Chrome版本3.0.195.6(测试版)。

虽然如果你需要快速解决方案,你可以使用preg_match来检查文件的扩展名(zip或不是)。

if (preg_match('/(.*)\.zip/',$_FILES['yournameattr']['name'])) {echo 'This is zip.';}

答案 2 :(得分:0)

我觉得Symfony中有一个错误。

已在here打开了一张票。