【发布时间】:2015-12-24 04:21:37
【问题描述】:
我有两个应用服务器 alpha 和 beta。两者都在同一主机上,都通过 apache httpd 访问,每个应用程序都有虚拟主机。
https://alpha 有一个带有正确 CN 集的证书,https://beta 也有。每个的 DNS 都是底层主机的 CNAME 条目。
我们基于 Apache HttpClient 的客户端在访问 https://beta 时抛出“javax.net.ssl.SSLException:证书中的主机名不匹配”异常,表明它获得的证书是 alpha 的。
java keytool 命令:
keytool -printcert -sslserver beta
显示同样的问题,返回 alpha 证书。 InstallCert.java 实用程序显示正确的 beta 证书。
目前,我们认为最好的解决方案是将 CNAME 记录替换为 A 记录,但由于涉及的提前期,尚未这样做。任何建议都会(非常)受欢迎。
【问题讨论】:
标签: java apache ssl httpclient