我有一个包含6个项目的解决方案。其中有两个我在项目属性中enabled SSL。 问题是,当我开始调试时,所有我的项目都以 https 开头,即使它们未配置为使用SSL。
E.g。在启用SSL之前,我的项目可以通过http://localhost:63684/
访问。现在,启用https后,我可以在https://localhost:43000/
下访问我的项目,但是当我尝试访问此网址时:http://localhost:63684/
,它会自动更改为https://localhost:63684/
并在浏览器中收到以下错误:
SSL connection error
ERR_SSL_PROTOCOL_ERROR
Unable to make a secure connection to the server. This may be a problem with the server, or it may be requiring a client authentication certificate that you don't have.
对于没有启用SSL的项目也是如此,我无法访问它们。
...\Documents\IISExpress\config\applicationhost.config
文件具有正确的绑定:
<bindings>
<binding protocol="http" bindingInformation="*:63684:localhost" />
<binding protocol="https" bindingInformation="*:44300:localhost" />
</bindings>
其他4个项目没有启用SSL,但仍会自动切换到https:
<bindings>
<binding protocol="http" bindingInformation="*:11483:localhost" />
</bindings>
我已经尝试删除IISExpress文件夹,因为我认为配置在某种程度上被破坏了,但它没有帮助。
是什么原因导致自动切换到https以及如何修复它?
顺便说一句,在我的2个项目中实施https时,我正在关注this文章,我的目标是在本地调试时使用http,在项目发布到网络时使用https。