无法解析此远程名称: 'www.***.com' 解决办法 请求因 HTTP 状态 417 失败

今天在做接口开发时,遇到了一个异常:无法解析此远程名称: '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文件。在你的程序中重新调用远程服务器就可以了。
 
===================================

System.Net.WebException: 请求因 HTTP 状态 417 失败: Expectation failed 问题

今天被System.Net.WebException: 请求因 HTTP 状态 417 失败: Expectation failed的问题搞死了

通过url访问服务器上的webservice是没问题的

但在程序中访问就出现System.Net.WebException: 请求因 HTTP 状态 417 失败: Expectation failed这个问题了

只能通过配置host指向webservice的服务器才能调用

baidu,google了无数次 ,原来是请求头的问题

在new了webservice后,调用webservice的方法之前加上

System.Net.ServicePointManager.Expect100Continue = false;

搞掂,世界一下清净了。

 

原文:

http://blog.csdn.net/wwzqj/article/details/7208332

 

posted @ 2015-06-07 23:54  心存善念  阅读(24480)  评论(2编辑  收藏  举报