780 KB 的JS文件, br 压缩到 169 KB, gzip压缩到 208K
效果非常棒
浏览器请求头如果支持br, 默认会使用br压缩,
.NET6 Program代码也可以用 nginx 的proxy_pass代理 去做gzip,不过会遇到一些问题,
nginx的 br好像还需要折腾一番,无法开箱即用
using Microsoft.AspNetCore.ResponseCompression; // ------------省略一些using------------ var builder = WebApplication.CreateBuilder(args); var services = builder.Services; //----------- // 省略一些中间件 //------------ // 第一步: 配置gzip与br的压缩等级为最优 services.Configure(options => { options.Level = CompressionLevel.Optimal; }); services.Configure (options => { options.Level = CompressionLevel.Optimal; }); // 第二步: 添加中间件 services.AddResponseCompression(options => { options.EnableForHttps = true; // 添加br与gzip的Provider options.Providers.Add (); options.Providers.Add (); // 扩展一些类型 (MimeTypes中有一些基本的类型,可以打断点看看) options.MimeTypes = ResponseCompressionDefaults.MimeTypes.Concat(new[] { "text/html; charset=utf-8", "application/xhtml+xml", "application/atom+xml", "image/svg+xml" }); }); var app = builder.Build(); // 第三步: 加入到http管道中 app.UseResponseCompression(); //----------- // 省略一些代码 //------------ app.Run();



