IIS ASP.Net网站 – ManagedPipelineHandler错误(尝试对不存在的网络连接执行操作)

我遇到了一个奇怪的问题.我有一个使用表单身份验证的ASP.Net Web应用程序.如果我打开登录页面并且有几分钟不活动,则登录尝试超时或IE / FireFox显示“无法显示此页面”.如果没有暂停或没有活动,则没有问题,网站按预期运行.

我在IIS中启用了跟踪.看似挂起的区域是NOTIFY_MODULE_START模块名称:ManagedPipelineHandler.在132141 ms后,我收到以下错误由于线程退出或应用程序请求,I / O操作已中止. (0x800703e3) – ErrorCode 2147943395.

错误代码2147943629

错误代码尝试对不存在的网络连接执行操作. (0x800704cd)

Screen Shot: http://www.plasmawebservices.com/images/errorScreenShot.png

服务器是Windows 2008 SP2. IIS 7

有没有人遇到这样的错误?

<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
<telerik:RadFormDecorator ID="RadFormDecorator" runat="server" DecoratedControls="All" />
<p>
    Please enter your username and password.
</p>
<asp:Login ID="LoginUser" runat="server" EnableViewState="false" RenderOuterTable="false">
    <LayoutTemplate>
        <asp:Panel runat="server" ID="LoginPanel" DefaultButton="LoginButton">
            <p>
                <span class="failure-notification">
                    <asp:Literal ID="FailureText" runat="server"></asp:Literal>
                </span>
            </p>
            <asp:ValidationSummary ID="LoginUserValidationSummary" runat="server" CssClass="failure-notification"
                ValidationGroup="LoginUserValidationGroup" />
            <div class="account-info">
                <fieldset class="login">
                    <legend>Account Information</legend>
                    <p>
                        <asp:Label ID="UserNameLabel" runat="server" AssociatedControlID="UserName">Username:</asp:Label>
                        <asp:TextBox ID="UserName" runat="server" CssClass="text-entry"></asp:TextBox>
                        <asp:RequiredFieldValidator ID="UserNameRequired" runat="server" ControlToValidate="UserName"
                            CssClass="failure-notification" ErrorMessage="User Name is required." ToolTip="User Name is required."
                            ValidationGroup="LoginUserValidationGroup">*</asp:RequiredFieldValidator>
                    </p>
                    <p>
                        <asp:Label ID="PasswordLabel" runat="server" AssociatedControlID="Password">Password:</asp:Label>
                        <asp:TextBox ID="Password" runat="server" CssClass="password-entry" TextMode="Password"></asp:TextBox>
                        <asp:RequiredFieldValidator ID="PasswordRequired" runat="server" ControlToValidate="Password"
                            CssClass="failure-notification" ErrorMessage="Password is required." ToolTip="Password is required."
                            ValidationGroup="LoginUserValidationGroup">*</asp:RequiredFieldValidator>
                    </p>
                    <%--<p>
                        <asp:CheckBox ID="RememberMe" runat="server"/>
                    <asp:Label ID="RememberMeLabel" runat="server" AssociatedControlID="RememberMe" CssClass="inline">Keep me logged in</asp:Label>
                    </p>--%>
                </fieldset>
                <p class="margin-top-10">
                    <asp:Button ID="LoginButton" runat="server" CommandName="Login" Text="Log In" ValidationGroup="LoginUserValidationGroup" />
                </p>
            </div>
        </asp:Panel>
    </LayoutTemplate>
</asp:Login>

谢谢,布伦南

解决方法

客户端的服务器上安装了AVG Security工作站组件.工作站组件导致IIS的通信问题.通过禁用Online Shield和Resident Shield,症状不再存在.

案例说明:

在Web应用程序的任何页面上停用两分钟后,页面将锁定.您将在下一个操作中看到一个Ajax加载面板(也称为旋转图标)120秒,然后什么都没有.该应用程序已锁定.

找出导致我们在空闲时间分钟后浏览任何网页时出现“在不存在的网络连接上尝试操作.(0x800704cd)”的原因的根本原因.由于多种原因可能会发生此问题,并且出于此故障单的目的,我们将只关注一个根本原因如果问题是由Microsoft组件引起的,我们将努力有效地解决此问题.如果发现问题的原因是第三方或自定义组件,我们将很乐意详细讨论我们的发现并提供可能的解决方法/解决方法.最终将由第三方供应商来解决这些类型的问题.

为了排除故障,默认的ASP.Net网站已创建并作为新网站部署到IIS.结果与有问题的网站相同.

IIS HTTP错误:

开始 – >跑 – >日志文件

2011-09-20 21:25:25 xx.xxx.xxx.xxx 36482 192.168.10.32 80 HTTP / 1.1 POST / orders / mail / mailorderentry – – Timer_HeaderWait –

2011-09-20 21:22:29 xx.xxx.xxx.xxx 44399 192.168.10.32 80 HTTP / 1.1 POST / orders / mail / mailorderentry – – Client_Reset –

首先,问题与Telrik有关.在REQUEST_ACQUIRE_STATE事件上加载Telerik.Web.UI.RadCompression时,通过IIS跟踪记录以下错误:

Telerik.Web.UI.RadCompression 132187 ms

> -GENERAL_READ_ENTITY_END
BytesReceived 0
ErrorCode 2147943395
ErrorCode由于线程退出或应用程序请求,I / O操作已中止. (0x800703e3)
信息化
> -GENERAL_FLUSH_RESPONSE_END
BytesSent 0
ErrorCode 2147943629
ErrorCode尝试对不存在的网络连接执行操作. 0x800704cd)

RadCompression模块已从Web应用程序web.config文件中删除;然而,问题仍然存在.

建议的解决方案:

现在在服务器上禁用AVG Online Shield和Resident Shield.

来自AVG:

以下AVG组件仅适用于工作站:

> AVG防火墙
> AVG Online Shield
> AVG个人电子邮件扫描仪
> AVG LinkScanner

上述组件未在系统负载下进行测试.如果安装在服务器操作系统(例如ISA,代理,邮件服务器,终端服务器等)上,则组件可能会导致服务器通信出现问题.为避免这些问题,建议不要在服务器操作系统上安装上述组件.
注意:如果您使用安装了某些服务器操作系统的计算机(例如Windows Server 2000,2003等)作为未启用服务器功能的标准计算机,则不适用.

有关特定服务器上AVG安装的更多信息,请参阅以下常见问题解答:

> FAQ 2129 – 终端服务器> FAQ 2176 – 电子邮件服务器

相关文章

引言 本文从Linux小白的视角, 在CentOS 7.x服务器上搭建一个...
引言: 多线程编程/异步编程非常复杂,有很多概念和工具需要...
一. 宏观概念 ASP.NET Core Middleware是在应用程序处理管道...
背景 在.Net和C#中运行异步代码相当简单,因为我们有时候需要...
HTTP基本认证 在HTTP中,HTTP基本认证(Basic Authenticatio...
1.Linq 执行多列排序 OrderBy的意义是按照指定顺序排序,连续...