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 小时前
Flutter主题与样式详解嘿嘿-661 天前
Windows 一键使用 GPT-6 Astra:Codex CLI 配置教程嘿嘿-661 天前
gpt-6-astra测试,测试你的模型有没有降智cui_ruicheng1 天前
FastAPI 应用开发(二):请求响应、Pydantic 模型与依赖注入智者知已应修善业2 天前
C#用一个循环[等效]取出字符串中的数字岁岁的O泡奶6 天前
[NSSCTF 2022 Spring Recruit]babyphp里欧跑得慢8 天前
AI 驱动的 UI 国际化方案自动适配:从单一语言到多语言布局的智能转换里欧跑得慢10 天前
Flutter 像素级还原:设计稿到代码的视觉无损转换技巧深念Y11 天前
# CC-Switch + Claude/Codex 折腾教训记录钛态12 天前
Vite 中的 CSS 工程化:从 CSS Modules 到 UnoCSS 的渐进式迁移