Зависимость Kestrel.Https 1.0.0-rc1-final не поддерживает фреймворк DNXCore, версия =v5.0
Я пытаюсь настроить https на мой сервер Kestrel для работы на Ubuntu 14 с dnxcore50.
Но когда я добавляю зависимость к:
"Microsoft.AspNet.Server.Kestrel.Https": "1.0.0-rc1-final"
И я пытаюсь восстановить свой пакет, я получаю это сообщение:
Зависимость Kestrel.Https 1.0.0-rc1-final не поддерживает фреймворк DNXCore, версия =v5.0
Если я захожу в Windows, использую dnx451 и добавляю те же зависимости, все работает отлично.
Но если я не могу использовать Kestrel.Https на Ubuntu с dnxcore50, как я могу настроить Https на Ubuntu с помощью dnxcore50?
2 ответа
Это связано с тем, что версия Kestrel для HTTPS предназначена только для полной платформы.NET на RC1: https://www.nuget.org/packages/Microsoft.AspNet.Server.Kestrel.Https/1.0.0-rc1-final.
По состоянию на RC2 Kestrel.Https будет целевым netstandard1.3
: https://github.com/aspnet/KestrelHttpServer/blob/dev/src/Microsoft.AspNetCore.Server.Kestrel.Https/project.json#L20.
Таким образом, решение состоит в том, чтобы либо дождаться сброса RC2, либо использовать биты RC2, истекающие из MyGet.
Сегодня Kestrel уже поддерживает HTTPS:
Вот библиотека, которая поддерживает его начиная с версии 1.0.0:
https://www.nuget.org/packages/Microsoft.AspNetCore.Server.Kestrel.Https/
Чтобы реализовать его в своем коде, вы должны инициализировать ядро приложения asp.net и добавить UseHttps
как вариант
Вот пример того, как это сделать!
public static void Main(string[] args)
{
var host = new WebHostBuilder()
.UseKestrel(options =>
{
// options.ThreadCount = 4;
options.NoDelay = true;
options.UseHttps("testCert.pfx", "testPassword");
options.UseConnectionLogging();
})
.UseUrls("http://localhost:5000", "https://localhost:5001")
.UseContentRoot(Directory.GetCurrentDirectory())
.UseStartup<Startup>()
.Build();
// The following section should be used to demo sockets
//var addresses = application.GetAddresses();
//addresses.Clear();
//addresses.Add("http://unix:/tmp/kestrel-test.sock");
host.Run();
}
Ниже также есть ссылка с образца
https://github.com/aspnet/KestrelHttpServer/blob/dev/samples/SampleApp/Startup.cs#L37-L43