31

我的网络服务出现此错误:

与远程主机通信时出错。错误代码为 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

谷歌搜索后:

微软论坛上的帖子,我禁用了网卡的卸载,没有任何改变:(

关于堆栈溢出的问题没有答案:(

我该如何解决这个问题?

更多信息

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

很重要

这仅发生在 Web 应用程序中,但如果我使用网站,则什么也没有发生(没有错误)。

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

4

3 回答 3

1

我也在我的网站上收到此错误。我已经确定了通常会导致此问题的代理,它是一个网络爬虫,就像谷歌用来索引页面的那个一样。

无论如何,我相信答案是原因 1 或原因 2:

原因1

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

原因2

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

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

于 2014-11-10T15:26:28.850 回答
0

关闭任何未使用的对象(在您使用完对象后关闭并将所有内容初始化为 null,直到您需要使用它为止。)

于 2018-02-27T08:25:06.427 回答
-1

这是因为您的代码中存在内部内存泄漏。结果,它无法在内存中创建新对象。

于 2012-09-10T08:44:39.893 回答