在IIS中发布后不会呈现BundleConfig

时间:2015-04-28 03:27:05

标签: c# jquery asp.net-mvc iis server

我在服务器中的IIS 7中发布了我的MVC网站。当我检查页面源时,我看到的是我的笔记本电脑中没有正确显示。

以下是在IIS服务器中发布后的页面源:

<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>

以下是我在笔记本电脑上测试时的页面来源:

    <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>

以下是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"));
    }
}

这是我在服务器上发布后的页面结果:

enter image description here

以下是预期结果:

enter image description here

页面错误:

enter image description here

我可以知道如何解决此问题吗?感谢。

3 个答案:

答案 0 :(得分:1)

试试这个:

  1. 检查您的web.config配置并确保编译调试设置为false

  2. 打开IIS配置 - &gt;身份验证 - &gt;右键单击Anonymous Auth - &gt;单击编辑 - &gt;选择应用程序池标识

答案 1 :(得分:0)

在您的web.config中添加以下<system.webserver>节点。

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

希望这能解决您的问题。

答案 2 :(得分:0)

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"));

StyleBundle虚拟路径名称应与项目的文件夹结构相匹配。样式规则可能包含对其他子目录的路径引用,当样式包名称与项目中的物理位置不匹配时,这些引用无法解析。

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