首页 > 解决方案 > 从 Visual Studio 使用 HTTPS 运行 ASP.NET Core 应用程序以获取专用网络地址

问题描述

我正在开发允许 HTTPS 的 ASP.NET Core MVC Web 应用程序(.NET 5)。主要目标是让其他设备支持 SignalR 的 Web 应用程序使用 HTTPS 发送/接收具有一定安全性的消息。

在项目属性 -> 调试选项卡 -> Web 服务器设置 -> 启用 SSL 中选中。

在 project-name/.vs/project-name/config/applicationhost.config 文件中,我在 Web 应用程序的站点节点中有这些绑定:

<binding protocol="http" bindingInformation="*:44903:localhost" />
<binding protocol="https" bindingInformation="*:44367:localhost" />
<binding protocol="https" bindingInformation="*:44367:127.0.0.1" /><!-- added by me -->
<binding protocol="https" bindingInformation="*:44367:10.128.0.75" /><!-- added by me -->

当我使用 Visual Studio 运行 Web 应用程序时,https://localhost:44367 会在浏览器的地址栏中使用锁定图标打开。如果我打开https://127.0.0.1:44367https://10.128.0.75:44367,网站会打开,但地址栏中会显示警告图标和“不安全”消息。

在同一台机器上使用 SignalR 客户端,我可以连接到 https://localhost:44367/hub。如果我尝试将 SignalR 连接到https://127.0.0.1:44367/hubhttps://10.128.0.75:44367/hub客户端,我会收到以下异常:

无法建立 SSL 连接,请参阅内部异常。

内部异常:

根据验证程序,远程证书无效:RemoteCertificateNameMismatch

即使是要能够使用 10.128.0.75 地址,我该如何解决这个问题?

标签: visual-studioasp.net-coresslasp.net-core-mvcssl-certificate

解决方案


推荐阅读