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
相关推荐
闲人编程1 天前
将你的Django/Flask应用部署到云服务器(Docker实战)unable code3 天前
攻防世界-Web-easyupload绿油果4 天前
Javaweb(BeanUtils)闲人编程6 天前
使用Celery处理Python Web应用中的异步任务被巨款砸中9 天前
一篇文章讲清Prompt、Agent、MCP、Function Calling闲人编程9 天前
使用Django从零开始构建一个个人博客系统王嘉俊92510 天前
Django 入门:快速构建 Python Web 应用的强大框架这儿有一堆花10 天前
英国公司注销后,能否在爱尔兰注册同名公司?闲人编程11 天前
2025年,如何选择Python Web框架:Django, Flask还是FastAPI?