我可以在我的开发盒上运行得很好,但不能在产品中运行。
我在我的域服务器上安装了 SSL 证书。
如何告诉我的 ASP.NET Core 应用程序使用哪个证书?我想我需要添加一些东西让它知道。
我问是因为目前我得到:
无法启动 Kestrel。
System.InvalidOperationException:无法配置 HTTPS 端点。未指定服务器证书,默认开发者证书找不到或已过期。
尝试在 IIS 上运行它,但没有成功,因此使用 Kestrel 进行测试,只需在我的工作计算机与服务器上单击它即可。
如何告诉我的 ASP.NET Core 应用程序使用哪个证书?我想我需要添加一些东西让它知道。
据我所知,我们可以使用 kestrel 或 IIS 托管应用程序。
如果您想为 kestrel 托管的 Web 应用程序绑定证书,我建议您可以尝试通过调用以下方法来配置证书:
UseHttps(X509Certificate2 serverCertificate)
更多详细信息,您可以参考以下代码(程序CreateHostBuilder方法):
webBuilder.UseKestrel(serverOptions =>
{
serverOptions.Listen(IPAddress.Loopback, 5001,
listenOptions =>
{
listenOptions.UseHttps("testCert.pfx",
"testPassword");
});
});
如果您想为IIS托管的Web应用程序绑定证书,则无需修改program.cs代码,可以直接使用IIS管理控制台设置SSL。
更详细的可以参考这个article https://learn.microsoft.com/en-us/iis/manage/configuring-security/how-to-set-up-ssl-on-iis#iis-manager.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)