css mime类型返回text / plain而不是text / css

时间:2012-05-28 09:06:43

标签: mime-types

我正在使用此代码从给定文件中获取mime类型

$finfo = new \finfo(FILEINFO_MIME_TYPE);
$mime  = $finfo->buffer(file_get_contents($file));

如果我将它提供给PHP文件,那么我得到

text/x-php

但是如果我把它提供给CSS文件我

text/plain

我一直试图解决这个问题无济于事,我在Apache中使用AddType来允许CSS文件类型。

有人有任何建议吗?

1 个答案:

答案 0 :(得分:5)

扩展程序 .css 时,您需要告诉Apache将文件作为 text / css 提供。服务器唯一能够区分样式表和任何其他类型文本文件的方法是文件名。

您可以通过编辑Apache的 MIME类型配置文件来实现,该文件名为 mime.types (根据您的发行版,它位于不同的文件夹中,可能会尝试< em> / etc / apache2 )进行以下关联:

text/css                    css

或者,如果您没有管理员权限,则可以在自己的Web根目录中创建 .htaccess 文件。关于两种方法的更多信息here

希望这有帮助!

在重读我们的问题时,也许我误解了你,你已经完成了上述步骤了?

如果是这样,你能检查你的操作系统正在读取mimetype吗?有适当的命令来检查mimetype,over here

此外,添加后续检查以查看文件扩展名是否以.css结尾似乎是实用的。有什么理由不起作用吗?