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

发布于 2024-12-05 01:00:50 字数 3677 浏览 1 评论 0原文

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

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

错误代码 2147943629

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

屏幕截图: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>

谢谢,布伦南

I am experiencing a strange issue. I have an ASP.Net web application that uses Forms Authentication. If I open the log-in page and there is a couple of minutes of inactivity, the log-in attempt times out or IE / FireFox display "Cannot display this page". If there is no pause or lack of activity, there is no issue and the website run as expected.

I enabled tracing in IIS. The area that appears to be hanging is NOTIFY_MODULE_START Module Name:ManagedPipelineHandler. After 132141 ms, I get the following error The I/O operation has been aborted because of either a thread exit or an application request. (0x800703e3) - ErrorCode 2147943395.

Error Code 2147943629

Error Code An operation was attempted on a nonexistent network connection. (0x800704cd)

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

Server is Windows 2008 SP2. IIS 7

Has anyone come across an error like this?

<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>

Thanks, Brennan

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

笨死的猪 2024-12-12 01:00:51

解决方案

客户在其服务器上安装了 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

  1. -GENERAL_READ_ENTITY_END
    接收字节数 0
    错误代码 2147943395
    ErrorCode 由于线程退出或应用程序请求,I/O 操作已中止。 (0x800703e3)
    信息性

  2. -GENERAL_FLUSH_RESPONSE_END
    发送字节数 0
    错误代码 2147943629
    ErrorCode 尝试对不存在的网络连接进行操作。 0x800704cd)

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

建议的解决方案:

暂时禁用服务器上的 AVG Online Shield 和 Resident Shield。

来自 AVG:

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

  • AVG Firewall
  • AVG Online Shield
  • AVG Personal E-mail Scanner
  • AVG LinkScanner

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

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

  • FAQ 2129 - 终端服务器
  • FAQ 2176 - 电子邮件服务器

Solution

The client had AVG Security workstation components installed on their servers. The workstation components caused communication issues with IIS. By disabling, Online Shield and Resident Shield the symptoms are no longer present.

Case Notes:

After two minutes of inactivity on any page on the web application, the page locks. You will see an Ajax loading panel ( aka spinning icon) for 120 seconds on your next action and then nothing. The application has locked.

To find out the root cause as to why we are getting the error "An operation was attempted on a nonexistent network connection. (0x800704cd)" when we browse any web page after an idle time of minutes. This issue can occur due to multiple reasons and for the purpose of this ticket we will concentrate on only one root cause If the issue is caused by a Microsoft component, we will work diligently and efficiently to resolve this issue. If the cause of the issue is identified to be a third party or custom component, we will be happy to discuss our findings in detail and provide possible methods of resolution/workaround. It will ultimately be up to the third party vendor to resolve these types of issues.

For troubleshooting, the default ASP.Net website was created and deployed as a new website to IIS. The results were the same as the problematic website.

IIS HTTP Errors:

start -> run -> LogFiles

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 –

At first, the issue apperared to be with Telrik. While loading up the Telerik.Web.UI.RadCompression on the REQUEST_ACQUIRE_STATE event, the following error was logged via IIS tracing:

Telerik.Web.UI.RadCompression 132187 ms

  1. -GENERAL_READ_ENTITY_END
    BytesReceived 0
    ErrorCode 2147943395
    ErrorCode The I/O operation has been aborted because of either a thread exit or an application request. (0x800703e3)
    Informational

  2. -GENERAL_FLUSH_RESPONSE_END
    BytesSent 0
    ErrorCode 2147943629
    ErrorCode An operation was attempted on a nonexistent network connection. 0x800704cd)

The RadCompression module was removed from the web application web.config file; however, the problem persisted.

Proposed Solution:

For now disable, AVG Online Shield and Resident Shield on the servers.

From AVG:

The following AVG components are designed only for a use on workstations:

  • AVG Firewall
  • AVG Online Shield
  • AVG Personal E-mail Scanner
  • AVG LinkScanner

The above components were not tested under a system load. If installed on a server operating system (such as ISA, proxy, mail server, terminal server, etc.) the components might cause issues with server communication. To avoid these issues it is not recommended to install the mentioned components on a server operating system.
Note: This does not apply in case that you use the computer with some server operating system installed (e.g. Windows Server 2000, 2003 etc.) as a standard computer without the server features enabled.

More information about the AVG installation on specific servers can be found in these FAQs:

  • FAQ 2129 - Terminal Server
  • FAQ 2176 - E-mail Server
旧时浪漫 2024-12-12 01:00:51

我知道这是一篇旧帖子,但以防万一有人遇到同样的问题...

当我们的负载均衡器设备尝试检查我们网站之一的 https 时,我们收到了相同的错误。尝试通过电脑浏览器点击链接效果很好。

  • 读取 HTTP 响应时

出错 失败的请求跟踪显示这 2 个错误

  • BEGIN_REQUEST - I/O 操作已因以下任一原因中止
    线程退出或应用程序请求。 (0x800703e3)
  • 尝试对不存在的网络连接进行操作。
    (0x800704cd)

我们的修复是在 IIS 中的“SSL 设置”下。当前为“客户端证书”选择了“接受”。更改为“忽略”解决了该问题。

I know this is an old post but just in case someone runs into the same issue...

We were receiving the same errors when our load balancer appliance was trying to check https for one of our sites. Trying to hit the link via a pc browser worked fine.

  • error while reading HTTP response

Failed Request Tracing showed these 2 errors

  • BEGIN_REQUEST - The I/O operation has been aborted because of either
    a thread exit or an application request. (0x800703e3)
  • An operation was attempted on a nonexistent network connection.
    (0x800704cd)

The fix for us was in IIS under "SSL Settings". "Accept" was currently selected for "Client Certificates." Changing to "Ignore" fixed the issue.

并安 2024-12-12 01:00:51

您遇到执行超时,因为 ASP.NET 应用程序在默认超时间隔后尚未返回到 IIS。

http://msdn.microsoft.com/en-us/library/e1f13641.aspx

这并不能解释为什么要花这么长时间。您可以将默认超时增加到 110 秒,这样您可以更好地进行故障排除,但您应该尝试调试代码,因为原因在发布的 ASP.NET 示例中并不明显。

要更改默认值,请在 web.config 中指定 httpRuntimeexecutionTimeout

如果您要连接到数据库进行身份验证,您可以查看那里并跟踪是否收到以及收到了什么。

You are getting an execution timeout because the ASP.NET application hasn't returned back to IIS after the default timeout interval.

http://msdn.microsoft.com/en-us/library/e1f13641.aspx

This doesn't explain why it is taking so long. You could increase the default timeout of 110 seconds which might allow you to troubleshoot it better, other then that you should try to debug the code as the reason is not apparent in the ASP.NET sample posted.

To change the default specify the executionTimeout of httpRuntime in your web.config.

If you are connecting to a database to do the authentication you could look there and trace if and what is received.

凡间太子 2024-12-12 01:00:51

我在我的 Windows 7 开发机器上也遇到了同样的问题 - 并且我的机器上也安装了 AVG。

我发现只需在电子邮件扫描程序设置中禁用检查传入电子邮件即可修复此问题。

我启用了 Resident Shield - 这似乎不是问题。

I had this same problem on my Windows 7 development machine - and also have AVG installed on my machine.

I found that simply disabling Check incoming e-mail in the E-mail Scanner settings fixed it for me.

I have Resident Shield enabled - this doesn't seem to be the problem.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文