css 和 js 文件的 mime 类型错误

css 和 js 文件的 mime 类型错误

我是 Apache 新手。我对 Apache 几乎一无所知。我使用的是 Apache 2.2.11。
我有一个 css 文件和多个 .js 文件,我正使用 php 页面(PHP - 5.2.8)将它们上传到远程存储。当我使用函数mime_content_type获取 css.css 文件的 mime 类型时,我得到的是text/plain。.js 文件也存在同样的问题。有些图像文件使用相同函数返回的 mime 类型是正确的。

我检查了服务器是否已text/css css在 mime.types 文件中定义。错误的 mime-type 给我带来了问题,我花了很多时间却一无所获。

有什么帮助吗?

答案1

首先,请注意 PHPmime_content_type应用于文件的方式内容 与 Apache 向客户端提供的 mime 类型不同,文件扩展名。然后,mime_content_type似乎被弃用,转而支持文件信息。但真正关键的是:内容css 文件的 不一定能被检测为 CSS(而不仅仅是纯 ASCII 文本)。这与 html 不同,html 可以通过内容的独特第一个字符(例如“ <HTML”)识别,因此被识别为text/html。因此,没有足够直接的方法来知道按内容该文件确实是 CSS,而不仅仅是纯 ASCII 文本。我建议您依靠文件扩展名来覆盖 text/plain 结果。

答案2

mime_content_type 函数的 PHP 文档

字符串 mime_content_type (字符串 $filename)

返回文件的 MIME 内容类型,该类型通过使用魔法哑剧文件。

相关内容