【问题标题】:C# and IIS - SSL dropping connections, fine over HTTPC# 和 IIS - SSL 丢弃连接,通过 HTTP 很好
【发布时间】:2009-04-27 12:38:00
【问题描述】:

在测试环境中,我自签名证书并将其安装在 IIS 6 中的网站上。这是使用 .NET 2.0。证书似乎很好(减去客户服务并不像人们期望的那样完全信任它的事实)。我可以通过 HTTPS 或 HTTP 从服务器本地访问站点来做任何我想做的事情。

远程访问此站点时出现问题。如果页面上有异常,则连接断开。不返回错误,而是直接丢弃,浏览器说它找不到该站点(这是在它搅动几秒钟之后,我可以看到来自客户端 IP 的 TCP 流量进入)。

有趣的是,我可以创建一个空白的 ASPX 页面,上面没有任何内容,而且通过 HTTPS 就可以了。但是,当我将 throw new Exception(); 放在页面上的那一刻,它又回到了 drop 状态。顺便说一句,如果我使用 HTTP 访问同一页面,它似乎完全正常。

所以我有点卡住了。有人见过这样的吗?

我的第一个倾向是遵循远程客户端计算机和服务器之间的代理/防火墙规则,但我想确保在我给其他团队带来麻烦之前,我无法修复它。

EDIT ...看起来是防火墙白名单问题。我子网上的其他人也有同样的问题,但其他地方的人可以很好地解决它。

【问题讨论】:

  • 您使用的是哪个版本的 IIS?

标签: asp.net iis ssl


【解决方案1】:

这不是代理或防火墙问题,因为黄屏死机只是可以通过任何防火墙正常传输的文本。以下是我首先要尝试的几件事。

  1. 通过处理 HTTPS,确保您使用 HTTPS 不是问题的根本原因,例如问题不是在您的程序中引起的。比如一些错误码的特殊处理。

  2. 创建一个新证书,看看是否会出现同样的问题。

  3. 尝试在另一台机器上重现此问题,可能只是配置问题。

  4. 尝试从 GoDaddy 获取真正的证书,它们只有 29.99。

这就是我现在所能想到的。您没有提到的一件事是您使用的是哪个版本的 IIS,这会很有帮助。

【讨论】:

  • 好电话,从另一台机器上打它似乎没问题。不知道是不是我在学习如何使用它们时玩弄了一些本地证书。
【解决方案2】:

您是否抛出了异常,然后使用常规 HTTP 测试了页面?是否发生了同样的事情,还是仅当您抛出异常并使用 HTTPS 访问它时才会发生?

【讨论】:

    猜你喜欢
    • 2012-07-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-15
    • 2015-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多