ASP.Net 捆绑导致 HTTPS 错误

ASP.Net bundling causing HTTPS error

当 web.config 中的调试标志设置为 true 时,为什么我会收到以下错误?

Mixed Content: The page at 'https://example.com/' was loaded over HTTPS, but requested an insecure script 'http://example.com/scripts/base/?v=JeAlpXPCZh9gYv4U-X7_HSaAX3Fj3sGBjwukxEaloQU1'.

捆绑包

bundles.Add(new ScriptBundle("~/scripts/base").Include(
    "~/Scripts/Base/app.module.js",
    "~/Scripts/Home/home.controller.js",
    "~/Scripts/Home/about.controller.js",
    "~/Scripts/App/Common/dictionary.class.js",
    "~/Scripts/App/Common/constants.class.js",
    "~/Scripts/App/Common/multiselect.directive.js",
    "~/Scripts/App/Common/paginationOptions.class.js",
    "~/Scripts/App/Common/gridHeight.directive.js",
    "~/Scripts/App/Common/utility.service.js",
    "~/Scripts/App/Common/dateToString.directive.js",
    "~/Scripts/App/Common/base.controller.js",
    "~/Scripts/App/Common/messagePopover.controller.js"
));

生成HTML

<script src="/scripts/base?v=JeAlpXPCZh9gYv4U-X7_HSaAX3Fj3sGBjwukxEaloQU1"></script>

今天早上我遇到了类似的问题。我发现我设置的虚拟路径与包含脚本的文件夹结构相同,一旦我重命名了虚拟文件夹路径,就会通过 https 请求脚本包。

尝试将脚本包虚拟路径更改为;

bundles.Add(new ScriptBundle("~/scripts/applicationBase").Include(
"~/Scripts/Base/app.module.js",
....,
....
));

希望对您有所帮助