我在 linode ubuntu 11 服务器上运行了一个 rails 应用程序,运行 apache2。我从 godaddy 购买了一个证书(我们也在那里购买了域名),并且该证书已安装在我的服务器上。
我的虚拟主机文件的一部分:
ServerName my_site.com
ServerAlias www.my_site.com
SSLEngine On
SSLCertificateFile /path/my_site.com.crt
SSLCertificateKeyFile /path/my_site.com.key
SSLCertificateChainFile /path/gd_bundle.crt
该证书在 Chrome、FireFox 和 IE 9+ 上运行良好,但在 IE 8 中出现此错误:
There is a problem with this website's security certificate.
The security certificate presented by this website was
issued for a different website's address.
我在同一台服务器上托管多个 rails 应用程序(目前有 4 个,外加一些不需要 ssl 的旧 php 站点)。
我尝试用谷歌搜索我能想到的所有可能的错误/情况组合,但目前我只能凭空猜测。我能想到的最接近的答案是,某些版本的 IE 不支持 SNI。但这不适用于此处,因为我在运行 IE 8 的 Windows 7 计算机上收到警告,并且如果操作系统是 Windows XP,SNI 似乎仅适用于 IE 8。
那么为什么这个证书被所有浏览器接受,但在 IE 8 中却发出警告?
编辑:
经过进一步的研究,我找到了更多答案。结果发现这也影响了 IE 9。然而问题似乎是 IE 没有遍历 SSL 链来获取正确的证书。当我尝试显示正确的证书时view certificate
,FireFox 和 Chrome 却显示我们其他站点的证书之一。
真正的问题在这里:
既然如此,为什么其他浏览器都能获得正确的证书而 IE 却无法获得呢?我该如何解决这个问题?