为 MVC Web 应用程序在 IIS Express 中的端口 443 上强制使用 SSL

Forcing SSL on port 443 in IIS Express for an MVC web application

我有一个 MVC 5 Web 应用程序部分,我需要 运行 使用 SSL(谎言登录、帐户管理等)。我为 Web 项目启用了 SSL,更改了 applicationhost.config:

中的绑定
<bindings>
    <binding protocol="http" bindingInformation="*:80:example.com" />
    <binding protocol="https" bindingInformation="*:443:example.com" />
</bindings>

但是,当我重新启动 IIS Express 和 运行 站点时,它会将 SSL 端口覆盖为 44300。有什么办法让它保持在 443 吗?

1) netsh http 显示 sslcert。在输出中搜索端口 44300 的条目并复制 certhash 和 appID。

2) 删除 44300 的条目:netsh http delete sslcert ipport=0.0.0.0:44300

3) 使用在步骤 1 中复制的 certhash 和 appID 为端口 443 添加一个新条目。netsh http add sslcert ipport=0.0.0.0:443 certhash= appid=

配置http.sys中的条目后,您需要重新启动http服务才能使更改生效。

网络停止http

网络启动 http

考虑到您已经映射了正确的绑定。通过右键单击 webapplication 虚拟目录 -> 管理应用程序 -> 高级设置 -> 启用协议

使您的应用程序能够在 IIS 中使用 https

在 FeaturedView 窗格中单击 SSL Settings 并选中显示 Require SSL 的框并单击应用。

您可能还想看看这个现有的 post