BundleConfig not rendered after publish in IIS

不打扰是莪最后的温柔 提交于 2019-12-11 03:23:17

问题


I publish my MVC website in IIS 7 in the server. When i check the page source, i see is not rendered correctly like in my laptop.

Here are the page source after publish in IIS server:

<title>Index - abc System</title>
<link href="/Content/css?v=_rLk6cMaTu8NrnGsCcMX7zjA8m5GS5kIRuTA39lx1hA1" rel="stylesheet"/>

<script src="/bundles/modernizr?v=wBEWDufH_8Md-Pbioxomt90vm6tJN2Pyy9u9zHtWsPo1"></script>

<script src="/bundles/jquery?v=FVs3ACwOLIVInrAl5sdzR2jrCDmVOWFbZMY6g6Q0ulE1"></script>

<script src="/bundles/bootstrap?v=Powlo484qpYf7E94XNxyY8F7N2GFx0uTQqXYUc9P62E1"></script>

<script src="/bundles/jqueryui?v=ZtBSbUDKlnEJoTEt91W1Sw3Wm7_cMVUFkutTVjnNqLk1"></script>


<!-- Script for menu -->
<script src="/Scripts/jqsimplemenu.js" type="text/javascript"></script>

Here are the page source when i test it in my laptop:

    <title>Index - abc System</title>
    <link href="/Content/jqueryui/jquery-ui.css" rel="stylesheet"/>
<link href="/Content/jqsimplemenu.css" rel="stylesheet"/>
<link href="/Content/bootstrap.css" rel="stylesheet"/>
<link href="/Content/Site.css" rel="stylesheet"/>
<link href="/Content/datepicker.css" rel="stylesheet"/>

    <script src="/Scripts/modernizr-2.6.2.js"></script>

    <script src="/Scripts/jquery-1.10.2.min.js"></script>

    <script src="/Scripts/respond.js"></script>
<script src="/Scripts/moment.js"></script>
<script src="/Scripts/bootstrap.js"></script>
<script src="/Scripts/bootstrap-datepicker.js"></script>

    <script src="/Scripts/jquery-ui.js"></script>


    <!-- Script for menu -->
    <script src="/Scripts/jqsimplemenu.js" type="text/javascript"></script>

Here are the code for BundleConfig.cs:

public class BundleConfig
{
    // For more information on bundling, visit http://go.microsoft.com/fwlink/?LinkId=301862
    public static void RegisterBundles(BundleCollection bundles)
    {
    bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
                "~/Scripts/jquery-{version}.js"));

    bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
                "~/Scripts/jquery-1.10.2.min.js"));

    bundles.Add(new ScriptBundle("~/bundles/jqueryui").Include(
    "~/Scripts/jquery-ui.js"));

    bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
                "~/Scripts/jquery.validate*"));

    // Use the development version of Modernizr to develop with and learn from. Then, when you're
    // ready for production, use the build tool at http://modernizr.com to pick only the tests you need.
    bundles.Add(new ScriptBundle("~/bundles/modernizr").Include(
                "~/Scripts/modernizr-*"));

    bundles.Add(new ScriptBundle("~/bundles/bootstrap").Include(
              "~/Scripts/respond.js",
              "~/Scripts/moment.js",
              "~/Scripts/bootstrap.js",
              "~/Scripts/bootstrap-datepicker.js"));

    bundles.Add(new StyleBundle("~/Content/css").Include(
               "~/Content/jqueryui/jquery-ui.css",
               "~/Content/jqsimplemenu.css",
                "~/Content/bootstrap.css",
               "~/Content/Site.css",
               "~/Content/datepicker.css"));
    }
}

Here the result of the page after i publish in server:

Here are the expected result:

Error in the page:

Can i know how to resolve this issue? Thanks.


回答1:


Try this :

  1. Check your web.config configuration and make sure compilation debug is set to false

  2. Open IIS Config -> Authentication -> right click on Anonymous Auth ->Click Edit -> Choose Application pool identity




回答2:


In your web.config add below in <system.webserver> node.

<system.webServer>
    <validation validateIntegratedModeConfiguration="false" />
    <modules runAllManagedModulesForAllRequests="true" />
</system.webServer>

Hope this will fix your issue.




回答3:


Make a new bundle for jqueryui

bundles.Add(new StyleBundle("~/Content/jqueryui/css")
    .Include("~/Content/jqueryui/jquery-ui.css"));

bundles.Add(new StyleBundle("~/Content/css").Include(
        // "~/Content/jqueryui/jquery-ui.css",
           "~/Content/jqsimplemenu.css",
            "~/Content/bootstrap.css",
           "~/Content/Site.css",
           "~/Content/datepicker.css"));

The StyleBundle virtual path name should match the folder structure of your project. Style rules may contain path references to other subdirectories and these can't be resolved when your style bundle name does not match the physical location in your project.

.foo {
    background-image:url('../Images/foo.png');
}


来源:https://stackoverflow.com/questions/29909761/bundleconfig-not-rendered-after-publish-in-iis

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!