为什么上传的.appcache或.manifest文件的mime类型 - “application / octet-stream”?

时间:2011-12-12 09:01:32

标签: php html5-appcache

我在表单上上传文件,当我上传名为“theManifest.manifest”或“theManifest.appcache”的文件时,mime-type不正确。

我在我的php代码中使用'echo'来告诉我上传文件的详细信息 - 这是代码:

 <form enctype="multipart/form-data" action="file-upload.php" method="POST">
   Upload the manifest file:<input type="file" name="uploaded" id="id_upload" />
   <input type="submit" value="Upload" />
 </form>

这是PHP代码,告诉我文件是什么:

    echo "<br> The file that was uploaded is as follows:";
    echo "<br>uploaded_name = " . $_FILES['uploaded']['name'];
    echo "<br>uploaded_size = " . $_FILES['uploaded']['size'];
    echo "<br>uploaded_type  = " . $_FILES['uploaded']['type'];
    echo "<br>uploaded_tmp_name = " . $_FILES['uploaded']['tmp_name'];
    echo "<br>uploaded_error = " . $_FILES['uploaded']['error'];

这是我得到的输出:

The file that was uploaded is as follows:
uploaded_name = theManifest.appcache
uploaded_size = 51
uploaded_type = application/octet-stream
uploaded_tmp_name = C:\xampp\tmp\php4064.tmp
uploaded_error = 0;

我只是不明白为什么在Windows Vista上运行的Firefox 8认为.manifest和.appcache文件都是 “application / octet-stream”的MIME类型。

以下是我的.appcache文件的内容,有时会使用.manifest重命名以测试此问题。

#This is a blank, test-cases-only, .manifest file.

这是一个带注释(.manifest-style comment)的文本文件,没有别的。

任何想法为什么MIME类型在这里是“application / octet-stream”???

正确的 MIME类型,我应该在上面的代码中看到的那个 - 据我所知  “text / cache-manifest” - 而不是“application / octet-stream”

1 个答案:

答案 0 :(得分:1)

您的计算机(或Firefox)不太可能将文件扩展名.appcache.manifest与MIME类型text/cache-manifest相关联。这很可能不重要。

当浏览器下载该文件时,这很重要,因为如果没有正确的MIME类型,浏览器就不会将该文件视为appcache清单。

但是对于文件上传,MIME类型对于appcache清单来说非常不重要,至少通常是这样。