Удалить сервер: заголовок Kestrel в Net Core 3 - PullRequest
2 голосов
/ 09 марта 2020

Вопрос

Как удалить «Server: Kestrel» из заголовка ответа в. Net Core 3 приложении?

enter image description here

В более ранних версиях вы могли сделать что-то подобное нижеприведенному, которое упоминается в этом переполнении стека ответ .

Net Core 1

 var host = new WebHostBuilder()
    .UseKestrel(c => c.AddServerHeader = false)
    .UseContentRoot(Directory.GetCurrentDirectory())
    .UseIISIntegration()
    .UseStartup<Startup>()
    .Build();

Net Core 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>();
            });

1 Ответ

1 голос
/ 09 марта 2020

Вы все еще должны быть в состоянии настроить конфигурацию Kestrel, все только что изменилось

public static IHostBuilder CreateHostBuilder(string[] args) =>
        Host.CreateDefaultBuilder(args)
            .ConfigureWebHostDefaults(webBuilder =>
            {
                webBuilder
                    .ConfigureKestrel(options => options.AddServerHeader = false)
                    .UseStartup<Startup>();
            });
...