今天在做接口开发时,遇到了一个异常:无法解析此远程名称: 'www.***.com'。我的网站一直是运行正常的,从昨天开始出现异常,用户可以使用,但我的服务器怎么也无法实现对数据库的更新。
分析原因:从防火墙屏蔽端口到支付宝签约id是否过期,最后才找出原因,原来我的服务器DNS解析错误,无法访问到调用的远程服务器。原因是:服务器不能上外网。
解决办法如下:
在服务器上执行:开始|运行|cmd ping www.***com //注:ping 后面的地址是你调用的远程服务器的域名。
如果可以ping通,说明DNS解析正确。
如果ping不通,找一台可以在公网访问到的机器再ping一下,记录下这个域名对应的IP地址。(举个例子,假如我们现在要调用远程服务器:www.alipay.com ,ping 这个域名后发现它的ip是110.75.136.21 。)
进入C:\WINDOWS\system32\drivers\etc 目录,找到hosts文件,打开,在文件尾部加入以下内容:
127.0.0.1 localhost
110.75.136.21 www.alipay.com
保存hosts文件。在你的程序中重新调用远程服务器就可以了。