c# - 在 IIS 7 中设置 2 个具有 2 个 IP 和不同证书的 SSL 站点
问题描述
我创建了一个额外的 IP 以托管 2 个站点并为它们设置 HTTPS 绑定。我已经设置了每个使用 1 个 IP 并且都设置为 443 和他们自己的证书的绑定。
一旦我重置了网站,一切正常。两者都在 https 中打开没有证书问题。我面临的问题是当这些站点调用第二台服务器时。然后我收到如下错误:
这发生在两个站点上。我已经检查了第二台服务器的主机文件,并且两个 IP 都添加到那里。一旦我将其中 1 个站点从特定 IP 更改回“所有未分配”,该站点就会再次正常工作。但是仍然具有特定 IP 的第二个站点在这方面不起作用。我不能将两者都设置为所有未分配,这让我感到困惑,为什么将其设置为那个,当它仍然使用该 IP 时,它无法工作。
前段时间只有 1 个是 https,另一个是 http,然后一切正常。既然我已经尝试过两种 HTTPS,我开始遇到联系第二台服务器的问题。两台服务器都支持 TLS1.2 、 1.1 和 1.0 在乞求时我已经禁用了 1.1 但尝试启用它以查看是否是问题所在。我还尝试了一些在线建议,例如在调用服务器之前添加这些行:
“System.Net.ServicePointManager.ServerCertificateValidationCallback = 委托 { 返回 true; };”
为了测试它是否是证书问题,我也尝试在这里设置 TLS1.2 并将项目更新为使用 .net4.6
任何建议将不胜感激
编辑:
我已经在实际服务器上创建了测试,错误是一样的: 测试代码
出于某种原因,即使单击安装其他框架,我也无法选择 .Net4.6,目标框架始终相同。
解决方案
我解决了这个问题。问题出在主机文件上,但不是来自我试图调用的服务器的文件,而是实际的本地主机。该域使用的本地 IP 127.0.0.1 与我的其他域使用的相同,因为它设置为“All Unassinged”。然后将服务器作为域调用实际上会返回错误的证书,这会破坏它。
我刚刚将两个域的 IP 从本地 IP 更改为特定的私有 IP,它就可以工作了。
感谢jdweng和Jokies Ding的帮助!
推荐阅读
- arrays - nodejs数组没有被复制?
- apache-spark - Spark从elasticsearch中查询1000亿行数据非常慢
- javascript - 如果 active = true 比在 javascript 中将其涂成红色
- android - 离子构建失败:添加 fcm 插件后“找不到 firebase-messaging.aar”
- java - 如何在java中创建服务器端秒表
- ubuntu - linux更新后如何维护开发环境
- python - Keras 错误:“BatchNormalization 形状必须为 1 级,但 batch_normalization 为 4 级”
- javascript - 如何在服务器上的 React 中编写 xhr/ajax 请求?
- python - 为什么这不创建文件?
- angular - 如何在同一台 PC 上设置具有不同 ionic 版本(2.2 和 3.0)的 Ionic Project?