Azure 上的 .NET Core 3 Linux 应用程序中的 SSL 错误
SSL error in .NET Core 3 Linux app on azure
我已在 linux 上向 Azure Web 应用 运行 发布了 .NET Core 3(预览版 9)。不幸的是,该应用程序无法启动并且日志显示此错误:
System.InvalidOperationException: Unable to configure HTTPS endpoint. No server certificate was specified, and the default developer certificate could not be found or is out of date.
2019-09-18T11:45:51.528664649Z To generate a developer certificate run 'dotnet dev-certs https'
我正在使用 *.azurewebsites.net
域访问站点,默认情况下应该启用 SSL。我已经将这个确切的应用程序发布到 Windows Web 应用程序,没有任何问题。
我对 Linux 不太熟悉,但我想把它托管在那里,因为它更便宜而且似乎提供更好的性能。我有什么想法可以解决这个问题吗?
这似乎是个熟悉的问题,试试下面的方法
dotnet dev-certs https --clean
dotnet dev-certs https -t
原来是配置问题。一旦我切换到使用
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.UseUrls(YourUrls)
.UseKestrel()
.ConfigureKestrel(options =>
{
options.ListenAnyIP(8080);
})
.UseIIS()
它开始在 Linux 下正常工作。
我使用 Ubuntu 18.04 时遇到同样的问题。使用以下配置解决(基于 Enn 回答)。我发现 UseUrls 和 UseIIS 不是必需的。
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
webBuilder.UseKestrel()
.ConfigureKestrel(options =>
{
options.ListenAnyIP(5000);
});
});
我已在 linux 上向 Azure Web 应用 运行 发布了 .NET Core 3(预览版 9)。不幸的是,该应用程序无法启动并且日志显示此错误:
System.InvalidOperationException: Unable to configure HTTPS endpoint. No server certificate was specified, and the default developer certificate could not be found or is out of date.
2019-09-18T11:45:51.528664649Z To generate a developer certificate run 'dotnet dev-certs https'
我正在使用 *.azurewebsites.net
域访问站点,默认情况下应该启用 SSL。我已经将这个确切的应用程序发布到 Windows Web 应用程序,没有任何问题。
我对 Linux 不太熟悉,但我想把它托管在那里,因为它更便宜而且似乎提供更好的性能。我有什么想法可以解决这个问题吗?
这似乎是个熟悉的问题,试试下面的方法
dotnet dev-certs https --clean
dotnet dev-certs https -t
原来是配置问题。一旦我切换到使用
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.UseUrls(YourUrls)
.UseKestrel()
.ConfigureKestrel(options =>
{
options.ListenAnyIP(8080);
})
.UseIIS()
它开始在 Linux 下正常工作。
我使用 Ubuntu 18.04 时遇到同样的问题。使用以下配置解决(基于 Enn 回答)。我发现 UseUrls 和 UseIIS 不是必需的。
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
webBuilder.UseKestrel()
.ConfigureKestrel(options =>
{
options.ListenAnyIP(5000);
});
});