在测试环境中,我自行签署了一个证书并将其安装在 IIS 6 的网站上。这是使用 .NET 2.0。证书看起来不错(减去客户服务并不像人们期望的那样完全信任它这一事实)。我可以通过 HTTPS 或 HTTP 从服务器本地访问站点来做任何我想做的事情。
远程访问此站点时出现问题。如果页面上有异常,则连接断开。不返回错误,而是直接掉线,浏览器说它找不到该站点(这是在它搅动几秒钟之后,我可以看到来自客户端 IP 的 TCP 流量传入)。
有趣的是,我可以创建一个空白的 ASPX 页面,上面什么也没有,而且通过 HTTPS 也可以。但是当我在页面上放置 throw new Exception(); 时,它又回到了下降状态。顺便说一句,如果我改为使用 HTTP 访问同一页面,它似乎完全正常。
所以我有点卡住了。有人见过这样的东西吗?
我的第一个倾向是遵循我的远程客户端计算机和服务器之间的代理/防火墙规则,但我想确保它不是我可以在我打扰其他团队之前解决的问题。
编辑 ...看起来是防火墙白名单问题。我子网上的其他人也有同样的问题,但其他地方的人可以正常访问。
最佳答案
这不是代理或防火墙问题,因为蓝屏死机只是可以通过任何防火墙传输的文本。以下是我首先要尝试的几件事。
通过处理 HTTPS,确保您使用的 HTTPS 不是问题的根本原因,例如问题不是由您的程序引起的。比如Error码的一些特殊处理。
创建一个新证书并查看是否出现相同的问题。
尝试在另一台机器上重现此问题,这可能只是配置问题。
尝试从 GoDaddy 获取真正的证书,它们只有 29.99。
这就是我现在能想到的全部。您没有提到的一件事是您使用的是哪个版本的 IIS,这将很有帮助。
关于asp.net - C# 和 IIS - SSL 丢弃连接,通过 HTTP 正常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/793305/