我有这个问题。Chrome继续返回此错误
资源解释为样式表,但以MIME类型text/html传输
受此错误影响的文件只有Style、chosen和jquery-gentleselect(以相同方式导入索引的其他CSS文件工作良好且没有错误)。我已经检查了我的MIME类型和文本/css已经在css上。
老实说,我想从理解问题开始(这似乎是我一个人做不到的事情)。
我有这个问题。Chrome继续返回此错误
资源解释为样式表,但以MIME类型text/html传输
受此错误影响的文件只有Style、chosen和jquery-gentleselect(以相同方式导入索引的其他CSS文件工作良好且没有错误)。我已经检查了我的MIME类型和文本/css已经在css上。
老实说,我想从理解问题开始(这似乎是我一个人做不到的事情)。
当前回答
我在一个。net应用程序中遇到了同样的问题,一个叫做MojoPortal的CMS开源程序。在我的一个特定网站的主题和皮肤中,在浏览或测试时,它会像窒息一样磨碎和变慢。
我的问题不是CSS的“类型”属性,而是“其他东西”。我的具体变化在Web.Config中。我将MinifyCSS, CacheCssOnserver和CacheCSSinBrowser的所有值都更改为FALSE。
一旦设定好了,网站再次快速投入生产。
其他回答
我也遇到了同样的问题,用同样的。htaccess文件来创建漂亮的url。经过几个小时的观察和实验。我发现这个错误是因为相对链接的文件。
浏览器将开始为所有css, js和图像文件获取相同的源HTML文件,当我将浏览几个步骤深入到服务器。
为了解决这个问题,你可以在HTML源代码上使用<base>标签,
<base href="http://localhost/assets/">
链接到这样的文件,
<link rel="stylesheet" type="text/css" href="css/style.css" />
<script src="js/script.js"></script>
或者对所有文件使用绝对链接。
<link rel="stylesheet" type="text/css" href="http://localhost/assets/css/style.css" />
<script src="http://localhost/assets/js/script.js"></script>
<img src="http://localhost/assets/images/logo.png" />
我在MVC4中使用表单身份验证时遇到了类似的问题。问题出在web。config中的这一行,
<modules runAllManagedModulesForAllRequests="true">
这意味着每个请求,包括静态内容的请求,都要经过身份验证。
将这一行更改为:
<modules runAllManagedModulesForAllRequests="false">
我在恢复一个旧的MEAN堆栈项目时遇到了同样的问题。我使用nodemon作为我的本地开发服务器,得到了相同的错误资源解释为样式表,但使用MIME类型text/html传输。我从nodemon更改为http-server,可以在这里找到。它立刻对我起了作用。
我想从理解问题开始
浏览器向服务器发出HTTP请求。然后服务器做出一个HTTP响应。
请求和响应都由一堆头部和一个(有时是可选的)包含一些内容的主体组成。
如果有一个主体,那么其中一个头是Content-Type,它描述了主体是什么(它是HTML文档吗?一个图像?表单提交的内容?等等)。
当您请求样式表时,服务器会告诉浏览器这是一个HTML文档(Content-Type: text/ HTML),而不是一个样式表(Content-Type: text/css)。
我已经查过了。Type and text/css已经在css上了。
那么,您的服务器的其他部分使样式表具有错误的内容类型。
使用浏览器开发人员工具的Net选项卡检查请求和响应。
使用ReactJs,当我添加样式文件到index.html使用相对链接,如
<link rel="stylesheet" href="./css/style.css"> .
然后我导航到一条路线,说;localhost:3000/artist和刷新,我得到错误。
错误消失后,我取代相对链接与绝对链接说;
<link rel=“stylesheet” href=“http://localhost/project/public/css/style.css”。