java—通过https连接到私有ip时出现“不存在主题替代名称”错误

mspsb9vt  于 2021-07-03  发布在  Java
关注(0)|答案(0)|浏览(196)

我有一个java应用程序作为azure应用程序服务运行。我们希望这个应用程序能够连接到运行在vm上的apache服务器,该vm与java应用程序集成在同一vnet中。应用程序可以通过公共域与这个apache服务器进行良好的通信。但是,当更改为专用ip(例如https:///path)时,我会遇到以下错误:

[INFO]  org.springframework.web.client.ResourceAccessException: I/O error on POST request for "https://<my private ip>/path": No subject alternative names present; nested exception is javax.net.ssl.SSLHandshakeException: No subject alternative names present

我自己也看过这个问题,我知道这个问题是由于java不允许它连接,因为它没有使用ssl证书中列出的域。
关于如何在不更改证书或对java代码进行任何更改的情况下解决这个问题,有什么建议吗(由于工作原因,我无法修改java应用程序本身的代码)
我尝试将属性-dcom.sun.jndi.ldap.object.disableendpointidentification=true添加到java应用程序的启动命令中,如下所示:

-Dcom.sun.jndi.ldap.object.disableEndpointIdentification=true

错误仍在发生。一位同事也建议使用hosts文件,但我认为这对于azureweb应用程序是不可能的。
希望这是清楚的。谢谢

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题