【发布时间】:2017-07-08 01:13:51
【问题描述】:
我的捆绑配置是这样的:
public class BaseBundleConfig
{
public static void RegisterBundles(BundleCollection bundles)
{
bundles.Add(new ScriptBundle("~/bundles/Models").IncludeDirectory("~/Scripts/models/", "*.js", true));
bundles.Add(new ScriptBundle("~/bundles/framework").Include(
"~/Scripts/framework/frameworkmodels.js",
"~/Scripts/framework/appbase.js",
"~/Scripts/framework/directives/directives.js",
"~/Scripts/framework/services/Services.js",
"~/Scripts/framework/controllers/controllers.js",
"~/Scripts/framework/filter/filters.js",
"~/Scripts/app/filter/customFilters.js"
).Include("~/Scripts/app.js"));
bundles.Add(new StyleBundle("~/Content/css").Include(
"~/Content/libs/bootstrap/bootstrap.min.css",
"~/Content/libs/bootstrap/bootstrap-theme.min.css",
"~/Content/libs/bootstrap/angular-csp.css",
"~/Content/libs/bootstrap/mainStyle.css"
));
BundleTable.EnableOptimizations = true;
}
}
我在 index.cshtml 中使用了 bundle,如下所示:
......
@System.Web.Optimization.Scripts.Render("~/bundles/framework")
.....
@System.Web.Optimization.Styles.Render("~/Content/css")
在 IIS 8.5 上发布后。捆绑和缩小按预期工作,但对于 ScriptBundle 和 StyleBundle,捆绑未压缩。响应内容类型始终是 text/javascript 或 text/css。 为什么 gzip 压缩不起作用?
动态和静态内容压缩都在 web.config 中设置为 true
<system.webServer>
<urlCompression doStaticCompression="true" doDynamicCompression="true" />
</system.webServer>
MVC 程序集的版本: System.Web.Mvc 5.2.3.0 System.Web.Optimization 1.1.0 并且动态压缩模块也安装在服务器上。
新信息: 两张截图,首先是IIS请求跟踪日志 显示动态压缩模块正在执行它的工作,第二个是该请求的 chrome 网络选项卡响应标头。为什么 Transfer-Encoding:chunked 和 response 不是 gzip :\
感谢您的想法
【问题讨论】:
-
对于 IIS 7.5 但可能有帮助 - stackoverflow.com/questions/6938713/…
标签: c# asp.net-mvc asp.net-mvc-5 bundling-and-minification iis-8.5