public void ConfigureServices(IServiceCollection services)
{
....
// 配置gzip 与 br的压缩等级为最优
services.Configure<BrotliCompressionProviderOptions>(options => {
options.Level = CompressionLevel.Optimal;
});
services.Configure<GzipCompressionProviderOptions>(options => {
options.Level = CompressionLevel.Optimal;
});
// 压缩
services.AddResponseCompression(options => {
options.EnableForHttps = true;// 启用HTTPS的压缩
//options.Providers.Add<BrotliCompressionProvider>();
options.Providers.Add<GzipCompressionProvider>();
// 拓展一些类型
options.MimeTypes = ResponseCompressionDefaults.MimeTypes.Concat(new[]
{
"text/html; charset=utf-8",
"application/xhtml+xml",
"application/atom+xml",
"image/svg+xml"
});
});
services.AddResponseCaching(); // 缓存
//解决中文被编码, 如页面显示 title是中文,但查看源代码是你好
services.AddSingleton(HtmlEncoder.Create(UnicodeRanges.All));
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
// 使用压缩缓存中间件 应该放在最上面,否则不起作用
app.UseResponseCompression();
// 使用缓存中间件
app.UseResponseCaching();
...
}
netcore 启用gzip压缩及缓存
秦宇升2025-02-21 13:12
相关推荐
pengzhuofan34 分钟前
Web开发系列-第9章 SpringBootWeb登录认证pengzhuofan1 小时前
Web开发系列-第13章 Vue3 + ElementPlusOEC小胖胖1 天前
渲染篇(一):从零实现一个“微型React”:Virtual DOM的真面目ん贤2 天前
GoWeb必备理论我的ID配享太庙呀2 天前
从零开始:在 PyCharm 中搭建 Django 商城的用户注册与登录功能(轮播图+商品页-小白入门版)YGY Webgis糕手之路3 天前
OpenLayers 快速入门(六)Interaction 对象uwvwko4 天前
使用docker(ubuntu)搭建web环境(php,apahce2)YGY Webgis糕手之路4 天前
WebGIS 常用坐标系曲幽5 天前
解锁C#异步编程:async/await实战指南,告别卡顿烦恼O执O6 天前
JavaWeb笔记四