我遇到过这样的情况:在多台机器中,有一台错误地将通过 Internet Explorer 11 中的 Web 表单上传的任何图像的 MIME 类型报告为“application/....”,而不是像其他所有机器一样报告为“image/....”,或者实际上同一台机器上的 Chrome 或 Firefox 也报告为“image/....”。这破坏了仅允许上传“image/...”MIME 类型的 Web 应用程序。
我的第一猜测是,也许与文件关联的应用程序是罪魁祸首,但更改它并没有起到作用。尝试过的其他方法包括重新启动机器,以及重置浏览器设置。
这台机器使用的是Windows 7,但是其他版本也许也会发生这种情况。
有谁知道如何将其更改为标准 MIME 类型,以及最初是什么原因导致这种情况的?
答案1
我们最近遇到了这个问题,原因是 Autodesk Pixlr 在注册表 HKLM\SOFTWARE\Classes.jpg 中将字符串值内容类型从“image/jpeg”覆盖为“application/jpeg”。
卸载了 Autodesk Pixlr,但它实际上删除了内容类型值而不是恢复为 image/*。
使用 Regshot 比较安装 Autodesk Pixlr 前后的注册表。确定了以下更改的条目:
HKLM\SOFTWARE\Classes.bmp\内容类型:“application/bmp” HKLM\SOFTWARE\Classes.gif\内容类型:“application/gif” HKLM\SOFTWARE\Classes.jpeg\内容类型:“application/jpeg” HKLM\SOFTWARE\Classes.jpg\内容类型:“application/jpg” HKLM\SOFTWARE\Classes.png\内容类型:“application/png” HKLM\SOFTWARE\Classes.tif\内容类型:“application/tif” HKLM\SOFTWARE\Classes.tiff\内容类型:“application/tiff”
因此再次卸载它,备份注册表并创建以下正确的条目:
HKLM\SOFTWARE\Classes.bmp\内容类型:“image/bmp” HKLM\SOFTWARE\Classes.gif\内容类型:“image/gif” HKLM\SOFTWARE\Classes.jpeg\内容类型:“image/jpeg” HKLM\SOFTWARE\Classes.jpg\内容类型:“image/jpeg” HKLM\SOFTWARE\Classes.png\内容类型:“image/png” HKLM\SOFTWARE\Classes.tif\内容类型:“image/tiff”
HKLM\SOFTWARE\Classes.tiff\内容类型:“image/tiff”
这解决了该问题。