我正在使用运行 ASP.Net Core 2.0 Web 应用程序的共享主机。当我在本地主机上运行该应用程序时,我可以看到 HttpCompression 工作正常(为 JS 文件返回响应标头的内容编码:gzip)。部署到共享主机后, content-encoding: gzip 响应不再存在。我尝试在 web.config 中添加各种 httpCompression/urlCompression 设置,但托管公司表示我的计划已禁用这些设置。有没有其他方法可以使 Gzip 压缩工作,或者我是否必须使用在 IIS 中启用它的托管计划?编辑:我还使用 ResponseCompression 中间件作为 ASP.Net Core 的一部分,内容编码响应标头仍然没有出现。配置代码如下: public void ConfigureServices(IServiceCollection services) { services.AddLogging(); services.AddResponseCompression(options => { options.Providers.Add<GzipCompressionProvider>(); });...} public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory) { if (env.IsDevelopment()) { loggerFactory.AddDebug(LogLevel.Debug); app.UseDeveloperExceptionPage(); app.UseBrowserLink(); } else { app.UseExceptionHandler("/error"); } app.UseStatusCodePagesWithRedirects("/error/{0}"); app.UseResponseCompression(); app.UseStaticFiles(new StaticFileOptions { OnPrepareResponse = ctx => { ctx.Context.Response.Headers.Append("Cache-Control", "public, max-age=604800"); } }); app.UseAuthentication(); app.UseMvc(routes => { routes.MapRoute( name: "areas", template: "{area:exists}/{controller=Home}/{action=Index}/{id?}" ); routes.MapRoute( name: "default", template: "{controller=Home}/{action=Index}/{id?}"); }); var options = new RewriteOptions() .AddRedirectToHttps(); app.UseRewriter(options); }
1 回答
- 1 回答
- 0 关注
- 124 浏览
添加回答
举报
0/150
提交
取消