什么是错误代码是0x80070001?我该如何解决?

时间:2012-08-25 11:10:29

标签: asp.net web-services iis

我在网络服务上收到此错误:

  

与远程主机通信时发生错误。错误代码是0x80070001

奇怪的是服务器上的CPU和内存使用率不高。

详细的错误消息:

错误消息:

  

与远程主机通信时发生错误。错误代码是0x80070001。

堆栈追踪:

at System.Web.Hosting.IIS7WorkerRequest.RaiseCommunicationError(Int32 result, Boolean throwOnDisconnect)<br />
at System.Web.Hosting.IIS7WorkerRequest.ReadEntityCoreSync(Byte[] buffer, Int32 offset, Int32 size)<br />
at System.Web.Hosting.IIS7WorkerRequest.ReadEntityBody(Byte[] buffer, Int32 size) <br />
at System.Web.HttpRequest.GetEntireRawContent()<br />
at System.Web.HttpRequest.get_InputStream()<br />
at Service.Upload() in c:\inetpub\path\Service.aspx.cs:line 213

Google搜索后:

Thread on Microsoft Forums我禁用了网卡的卸载而没有任何变化:(

Question on Stack OverFlow没有答案:(

如何解决此问题?

更多信息

内部异常消息:句柄无效。 (HRESULT异常:0x80070006(E_HANDLE))

很重要

这只发生在Web应用程序中,但如果我使用的是网站,则没有任何反应(没有错误)。

经过大量研究后,我认为这个错误是由web.config文件引起的。

1 个答案:

答案 0 :(得分:1)

我也在我的网站上收到此错误。我已经确定了通常会导致此问题的代理,它是一个类似Google用来索引页面的网络抓取工具。

无论如何,我认为答案是原因1或原因2:

原因1

出现此问题的原因是客户端使用不符合HTTP规范的HTTP方法发出HTTP请求。

原因2

出现此问题的原因是客户端通过将POST方法发送到配置为由StaticFile处理程序处理的页面来发出HTTP请求。例如,客户端将POST方法发送到静态HTML页面。但是,为StaticFile处理程序配置的页面不支持POST方法。

查看微软链接以获取更多解释和可能的解决方案:http://support.microsoft.com/kb/942051