客户端通过https连接另一个服务器时,出现下面的异常。
原因是服务器端的证书配置有错误,生成证明书时 common name 设置的不正确。
服务器端重新生成一个证明书,common name设置成服务器完整的域名即可。
注意:上面完成后,客户端需要重新安装证书。
具体参照openssl的教程。
javax.net.ssl.SSLException: hostname in certificate didn't match: <xxxx.m.diol.jp> != <xxxx> at org.apache.http.conn.ssl.AbstractVerifier.verify(AbstractVerifier.java:238) at org.apache.http.conn.ssl.BrowserCompatHostnameVerifier.verify(BrowserCompatHostnameVerifier.java:54) at org.apache.http.conn.ssl.AbstractVerifier.verify(AbstractVerifier.java:159) at org.apache.http.conn.ssl.AbstractVerifier.verify(AbstractVerifier.java:140) at org.apache.http.conn.ssl.SSLConnectionSocketFactory.verifyHostname(SSLConnectionSocketFactory.java:286)