JS 和 CSS 文件由于 MIME 类型不匹配而被阻止

问题描述 投票:0回答:2

当我登录在前端使用 Angular JS 并在 JBoss 服务器上运行的应用程序的 URL 时,JS 和 CSS 文件正在加载,状态为 200,但我仍然遇到以下错误,文件没有被执行,我有出于隐私目的,将原始 URL 替换为文本 URL:

在 Chrome 浏览器中:

Refused to apply style from 'URL/bootstrap-glyphicons.css' because its MIME type ('text/html') is not a supported stylesheet MIME type, and strict MIME checking is enabled.

Refused to execute script from 'URL/angular.min.js' because its MIME type ('text/html') is not executable, and strict MIME type checking is enabled.

在火狐浏览器中:

The resource from “URL/bootstrap.min.css” was blocked due to MIME type (“text/html”) mismatch (X-Content-Type-Options: nosniff).

The resource from “URL/angular-route.min.js” was blocked due to MIME type (“text/html”) mismatch (X-Content-Type-Options: nosniff).

我们在 URL 和设置标头的应用服务器之间使用 Web 服务器。设置了标头 X-Content-Type-Options: nosniff。我在应用程序服务器级别找不到与此相关的任何设置。我无法理解为什么 MIME 类型以 text/html 返回。我检查了“网络”选项卡中的每个资源,内容类型有时显示为 application/javascript; JS 文件的 charset=UTF-8,有时显示为 text/html;字符集=UTF-8

angularjs jboss7.x mime-types content-type x-content-type-options
2个回答
0
投票

请检查文件路径是否正确并且文件是否存在,在我的情况下这就是问题所在,当我修复它并且错误消失时。 希望它也对你有用。


0
投票

我找不到问题的根源,但我知道问题是因为在应用程序服务器前面使用了 L4 负载均衡器。

我们将 L4 更改为 L7,问题得到解决。我不确定为什么 L4 负载均衡器会导致此问题。

如果有人知道此问题的根本原因,请告诉我。

© www.soinside.com 2019 - 2024. All rights reserved.