我使用MVC,Java Script,JQuery,Ajax创建应用程序。当我使用visual studio进行调试时,它的工作正常,没有任何脚本错误。之后,我在IIS服务器上托管我的应用程序,它显示控制台错误,我的应用程序样式不完美。我已附上以下错误。
错误:资源被解释为样式表,但使用MIME类型text / javascript传输:
图像:
答案 0 :(得分:18)
我遇到了完全相同的问题,因为我的HTML中的行有以下形式:
<link rel="stylesheet" type="text/css" href="css/my_css_resource.css" />
当我从标记中删除rel="stylesheet"
时,问题已解决。
答案 1 :(得分:7)
我无法评论,因为代表人数少,但这非常重要。
答案是:
“我遇到了完全相同的问题,由以下形式的 HTML 中的行引起:
<link rel="stylesheet" type="text/css" href="css/my_css_resource.css" />
当我从标签中删除 rel="stylesheet" 后问题就解决了。"
这是非常错误的。 rel="stylesheet" 告诉浏览器这是一个 css 文件。没有它,浏览器不知道如何处理 CSS 文件,并且其中的任何设计代码都不会被执行。
我通过从我的 html 文件中删除所有出现的 rel="stylesheet" 来确认这一点:结果是一个完全“裸”的页面,完全没有任何设计。我已经链接了 bootstrap css 和我自己的非空 css,并在删除 rel="stylesheet" 之前对其进行了测试,以查看样式实际上是由它们修改的。
Mime 类型由文件的发送者设置,在本例中为 Web 服务器。错误消息表示服务器以纯文本形式发送的文件被浏览器解释为 CSS。在这种情况下,问题出在服务器上,而不是在浏览器中。浏览器正确地将此 CSS 文件解释为样式表。服务器应该发送了正确的 MIME 类型。
再次,我很抱歉我将此作为答案发布,即使它不是,但由于代表较低,我无法发表评论。如果版主正在阅读此内容并希望将其删除,请将其作为对相关答案的评论发布,或者在可能的情况下将答案标记为错误,以免人们因此而受苦。
答案 2 :(得分:2)
我意识到,使用新的Windows 10计算机时,我无法在本地IIS中启用“静态内容”。为此,请从“控制面板”转到“打开或关闭Windows功能”,然后导航到以下位置:
确保选中此“静态内容”选项。然后,以管理员身份打开命令窗口并执行iisreset。
动臂,固定。
答案 3 :(得分:0)
我遇到了同样的问题,这是由于使用错误的方法创建了捆绑包。我粗心地复制了脚本包代码,并用CSS替换了它。确保为CSS使用 Style Bundle,为JS使用 Script Bundle。与渲染时相同。 样式 .Render()和脚本 .Render()。
我有这个:
bundles.Add(new ScriptBundle("~/bundles/bootstrap-core-css").Include("~/Content/themes/bootstrap/css/bootstrap.min.css"));
我更改为:
bundles.Add(new StyleBundle("~/bundles/bootstrap-core-css").Include("~/Content/themes/bootstrap/css/bootstrap.min.css"));
我希望这会有所帮助。
答案 4 :(得分:0)
我现在有相同的错误,我发现服务器上不存在css文件,因此它返回了404页。
因此,您需要验证CSS的链接。
资源被解释为样式表,但使用MIME类型text / javascript
传输上面的消息可以解释为:
您请求的是CSS文件,但我们正在将JavaScript文件发送回给您。
如果要开始调试,我认为应该从确保文件源开始。
我希望这对某人有帮助。
答案 5 :(得分:0)
是的,我也看到了这个问题...出现此问题是因为在.htaccess中添加了RewriteRule ...所以 您必须更改css文件目录,然后它将解决
答案 6 :(得分:0)
我也遇到了CRA应用程序的此问题。我刚刚清除了浏览器数据,这似乎已经解决了此问题。可能是某些缓存的文件引起的。
在清除浏览器数据之前,我在edge和firefox上检查了相同的构建,并且按预期工作。
错误:资源被解释为样式表,但以MIME类型text / html传输:“ https://abcxyz.com/static/css/2.0ce10a16.chunk.css”。
答案 7 :(得分:0)
另一种可能性是,如果您的web.config文件中有一个小写的重写规则,则类似于:
<rule name="LowerCaseRule1" stopProcessing="true">
<match url="[A-Z]" ignoreCase="false" />
<action type="Redirect" url="{ToLower:{URL}}" />
</rule>
如果包括这种类型的规则,则需要确保所有脚本和样式表链接均为小写。如果不是,您可能会看到此警告。
答案 8 :(得分:0)
我有一个使用 Angular 6
的 Docker
项目,但遇到了这个错误。我在这里尝试了许多明智的解决方案,但没有一个对我有用。我以各种方式对此错误进行了研究。
根据答案 here,我已将其添加到我的 nginx.conf
文件中,如下所示。
我的 nginx.conf
文件已更改为以下内容:
http
{
# The line added.
include /etc/nginx/mime.types;
server {
listen 80;
listen [::]:80;
server_name _;
...
}
...
}
添加后,我的问题解决了,项目成功运行。 我希望这个答案能帮助那些正在寻找问题答案的人。
答案 9 :(得分:0)
我使用 react,得到同样的错误,我通过删除链接标签中的 type="text/css" 来修复, 没有错误,我验证了 css 真的被下载了。
如果你删除 rel="stylesheet",没有错误,但是 css 甚至不会下载,所以这不是一个解决方案,这是一个陷阱
<link href="../src/css/gps/sidenav.css" rel="stylesheet" />