删除 Net Core 3 中的 Server:Kestrel Header
Remove Server:Kestrel Header in Net Core 3
问题
如何从 .Net Core 3 应用程序的响应 header 中删除 "Server:Kestrel"?
在早期版本中,您可以执行以下操作,此 Stack Overflow .
中提到了
网络核心 1
var host = new WebHostBuilder()
.UseKestrel(c => c.AddServerHeader = false)
.UseContentRoot(Directory.GetCurrentDirectory())
.UseIISIntegration()
.UseStartup<Startup>()
.Build();
网络核心 2
WebHost.CreateDefaultBuilder(args)
.UseKestrel(c => c.AddServerHeader = false)
.UseStartup<Startup>()
.Build();
Net Core 3(未找到 UseKestrel(),并且不起作用,因此以下不可能。)
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.UseKestrel(c => c.AddServerHeader = false)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
});
您应该仍然可以设置 Kestrel 配置,只是有些变化
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder
.ConfigureKestrel(options => options.AddServerHeader = false)
.UseStartup<Startup>();
});
问题
如何从 .Net Core 3 应用程序的响应 header 中删除 "Server:Kestrel"?
在早期版本中,您可以执行以下操作,此 Stack Overflow
网络核心 1
var host = new WebHostBuilder()
.UseKestrel(c => c.AddServerHeader = false)
.UseContentRoot(Directory.GetCurrentDirectory())
.UseIISIntegration()
.UseStartup<Startup>()
.Build();
网络核心 2
WebHost.CreateDefaultBuilder(args)
.UseKestrel(c => c.AddServerHeader = false)
.UseStartup<Startup>()
.Build();
Net Core 3(未找到 UseKestrel(),并且不起作用,因此以下不可能。)
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.UseKestrel(c => c.AddServerHeader = false)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
});
您应该仍然可以设置 Kestrel 配置,只是有些变化
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder
.ConfigureKestrel(options => options.AddServerHeader = false)
.UseStartup<Startup>();
});