我一直在尝试在我们的服务器上安装来自 GoDaddy 的 UCC SSL 证书。我已成功在主服务器 (IIS6) 上创建 CSR,并已获得 GoDaddy 的批准。然后,为了进行测试,我将另一个域添加到证书中并将其导出到我们的测试服务器上。测试服务器较新,具有 IIS7,但按照 GoDaddy 网站上提供的说明,安装和运行证书是一个相对轻松的过程。
这是我遇到问题的地方。我的下一步是尝试在我们的主服务器上使用另一个测试站点运行 HTTPS。我遵循相同的流程,将新域名添加到证书中并获得批准。然后我回到服务器上,按照以下说明操作:Godaddy for iis6 安装。唯一的问题是,它不起作用。
如果我尝试使用 HTTPS 浏览该网站,Firefox 会显示无法连接错误(Fiddler 说这是一个 502 错误)。
我尝试过 netstat 并且看到 localhost 正在监听端口 443。
我检查了防火墙,发现该端口存在例外。
我可以从本地机器通过 telnet 连接到该端口上的服务器。
我尝试使用特定的 IP 并使用*全部未分配*。
我尝试使用不同的端口(在防火墙上为其添加了例外并将端口放在 URL 中)。
我尝试从命令行运行它:cscript.exe adsutil.vbs set /w3svc//SecureBindings ":443:"
我已检查该证书是否有私钥。
我已经查找过日志,但找到的日志并未告诉我页面加载失败的原因。
到目前为止,什么都没起作用。我无法理解为什么在 iis7 中“正常工作”的东西在 iis6 中却如此困难。
所以我想我的问题是,我还能尝试什么和/或如何调试它?
答案1
通常情况下就可以正常工作。
本地计算机上的浏览器是否可以将 https 连接到 IP 地址?(忽略任何“证书名称无效”错误)。您还可以从客户端计算机或服务器尝试 WFETCH(IIS 6 资源工具包工具的一部分 - 它不易受到代理劫持和奇怪的 WinInet 行为的影响 - 比如 Telnet)。
另外,请记住 502 可能是代理错误 - 如果它是 FQDN(在客户端和服务器本身上),则可能需要将该站点添加到代理例外列表中,否则浏览器可能会尝试绕远路访问可能尚不存在的某个站点。