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
相关推荐
hhhhde_15 小时前
CTFSHOW web入门 黑盒测试 web389-web391审判长烧鸡1 天前
标准 HTTP API 签名鉴权 Header 完整规范Cloud_Shy6182 天前
Python 数据分析基础入门:《Excel Python:飞速搞定数据分析与处理》学习笔记系列(第十一章 Python 包跟踪器 中篇)hhhhde_2 天前
CTFSHOW web入门 黑盒测试 web385-web388审判长烧鸡2 天前
【Go工具】go-playground除了validator还有哪些常用的库大数据魔法师2 天前
Streamlit(二)- Streamlit 架构与运行机制大数据魔法师2 天前
Streamlit(三)- Streamlit 多页面应用开发其实防守也摸鱼4 天前
ctfshow--Crypto(funnyrsa1-密码2)解题步骤曲幽4 天前
你的Agent API还在裸奔?从认证到沙箱,我用FastAPI搭了几道防线hhhhde_4 天前
CTFSHOW web入门 黑盒测试 web380-web384