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
相关推荐
ftpeak3 天前
从零开始使用 axum-server 构建 HTTP/HTTPS 服务fanged4 天前
Cesium4--地形(OSGB到3DTiles)三角叶蕨4 天前
javaweb CSSOEC小胖胖4 天前
App Router vs. Pages Router:我应该如何选择?脑子慢且灵5 天前
[JavaWeb]模拟一个简易的Tomcat服务(Servlet注解)虚伪的空想家7 天前
K8S的dashboard部署与访问脑子慢且灵8 天前
【JavaWeb】一个简单的Web浏览服务程序诗人不说梦^8 天前
[RootersCTF2019]I_<3_FlaskOEC小胖胖10 天前
Next.js数据获取入门:`getStaticProps` 与 `getServerSideProps`借你耳朵说爱你11 天前
浅拷贝和深拷贝两种不同的对象复制