0
点赞
收藏
分享

微信扫一扫

java.net.UnknownHostException 解决方法

是波波呀 2022-02-22 阅读 41


  今天有位小伙伴来求助,说他们公司用的单点登录,接口URL在公司的公网域名下,如(),他打包好的Web项目在自己机子上跑没问题,一部署到服务器就报 ​​java.net.UnknownHostException​​ 错误,从字面上看是请求目标的服务连不上,网络不通。这到底是怎么回事?又该怎么解决呢?mark一下

一般原因:


  • 1.服务器没网,调不到公网域名,无法解析出IP,从而无法识别host,导致无法连接;
  • 2.网络端口映射做了策略,调用不到自己路由的域名,必须调内网IP;

  询问了小伙伴一下,她属于第一种,服务器没网,但她们单点登录服务也在同一个内网,按理应该通的。

  那么就清楚了,说明​​Web服务器没有配置和单点登录服务 域名/IP的映射关系​​​,所以访问不到,​​需要在hosts文件中把接口的 IP/域名 写上​​,在服务器发送请求时,就会自动把域名转成IP进行调用了。

解决步骤:


下面我将以的域名为例(。注:小伙伴的服务器是Windows,和Linux修改方式基本相同




用有互联网的机器 window+r → cmd 进入dos窗口



获取域名对应的IP,命令:nslookup www..net
java.net.UnknownHostException 解决方法_java
插一句嘴,国内whois网站(如站长之家)都是封装了各种类似命令集成一下而已
java.net.UnknownHostException 解决方法_.net_02



打开hosts文件, C:\Windows\System32\drivers\etc\hosts (Linux中一般在:/etc/hosts)



修改hosts文件,把域名和IP写到hosts文件中,用于域名解析成IP
java.net.UnknownHostException 解决方法_UnknownHost_03



执行:ipconfig /flushdns #清除DNS缓存,刷新



完成,这样你就可以调到域名下的接口了:如 - https://www.net/xxx/login

希望你已经解决了这个问题,如果有其他疑惑,评论区等你哦~



举报

相关推荐

0 条评论