Веб-сайт IIS ASP.Net - ошибка ManagedPipelineHandler (была предпринята попытка выполнить операцию на несуществующем сетевом соединении) - PullRequest
10 голосов
/ 16 сентября 2011

У меня странная проблема. У меня есть веб-приложение ASP.Net, которое использует проверку подлинности с помощью форм. Если я открою страницу входа в систему и произойдет несколько минут бездействия, истечет время ожидания попытки входа в систему или в IE / FireFox отобразится сообщение «Не удается отобразить эту страницу». Если нет паузы или отсутствия активности, проблема не возникает, и веб-сайт работает должным образом.

Я включил трассировку в IIS. Область, которая кажется зависшей, представляет собой NOTIFY_MODULE_START Имя модуля: ManagedPipelineHandler. По истечении 132141 мс я получаю следующую ошибку. Операция ввода-вывода была прервана из-за выхода из потока или запроса приложения. (0x800703e3) - ErrorCode 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>

Спасибо, Бреннан

Ответы [ 4 ]

8 голосов
/ 21 сентября 2011

Решение

На клиентских компьютерах установлены компоненты рабочей станции AVG Security.Компоненты рабочей станции вызвали проблемы связи с IIS.При отключении Online Shield и Resident Shield симптомы больше не присутствуют.

Примечания по делу:

После двух минут бездействия на любой странице веб-приложения страница блокируется.На следующем действии вы увидите панель загрузки Ajax (он же вращающийся значок) в течение 120 секунд, а затем ничего.Приложение заблокировано.

Чтобы выяснить причину возникновения ошибки «Была предпринята попытка выполнить операцию при несуществующем сетевом подключении. (0x800704cd)» при просмотре любой веб-страницы после простояминут.Эта проблема может возникать по нескольким причинам, и в целях данного тикета мы сконцентрируемся только на одной основной причине. Если проблема вызвана компонентом Microsoft, мы будем работать усердно и эффективно, чтобы решить эту проблему.Если причина проблемы определена как сторонний или пользовательский компонент, мы будем рады подробно обсудить наши выводы и предоставить возможные методы решения / обходного пути.В конечном итоге сторонние поставщики будут решать эти типы проблем.

Для устранения неполадок веб-сайт ASP.Net по умолчанию был создан и развернут в качестве нового веб-сайта для IIS.Результаты были такими же, как и у проблемного веб-сайта.

Ошибки HTTP IIS:

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 -

Сначала проблема возникла с Telrik.При загрузке Telerik.Web.UI.RadCompression для события REQUEST_ACQUIRE_STATE при трассировке IIS была зарегистрирована следующая ошибка:

Telerik.Web.UI.RadCompression 132187 мс

  1. -GENERAL_READ_ENTITY_END BytesReceived 0 ErrorCode 2147943395 ErrorCode Операция ввода-вывода была прервана из-за выхода из потока или запроса приложения.(0x800703e3) Информационный

  2. -GENERAL_FLUSH_RESPONSE_END BytesSent 0 ErrorCode 2147943629 ErrorCode Была предпринята попытка выполнить операцию на несуществующем сетевом соединении.0x800704cd)

Модуль RadCompression был удален из файла 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Установка на определенных серверах может быть найдена в следующих часто задаваемых вопросах:

  • Часто задаваемые вопросы 2129 - Сервер терминалов
  • Часто задаваемые вопросы 2176 - Сервер электронной почты
1 голос
/ 07 марта 2014

Я знаю, что это старый пост, но на тот случай, если кто-то столкнется с той же проблемой ...

Мы получали те же ошибки, когда наше устройство балансировки нагрузки пыталось проверить https для одного из наших сайтов.,Попытка щелкнуть ссылку через браузер компьютера работала нормально.

  • Ошибка при чтении ответа HTTP

Трассировка неудачных запросов показало эти 2 ошибки

  • BEGIN_REQUEST - Операция ввода-вывода была прервана из-за выхода из потока или запроса приложения.(0x800703e3)
  • Была предпринята операция на несуществующем сетевом соединении.(0x800704cd)

Исправление для нас было в IIS в разделе «Настройки SSL».«Принять» в настоящее время выбрано для «Сертификаты клиента».Изменение на «Игнорировать» исправило проблему.

0 голосов
/ 12 октября 2011

У меня была такая же проблема на моей машине для разработки под Windows 7. У меня также был установлен AVG.

Я обнаружил, что просто отключаю Проверьте входящую электронную почту в E-mail Scanner Настройки исправили это для меня.

У меня включен Resident Shield - похоже, это не проблема.

0 голосов
/ 16 сентября 2011

Вы получаете тайм-аут выполнения, поскольку приложение ASP.NET не вернулось обратно в IIS после истечения времени ожидания по умолчанию.

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

Это не объясняет, почему это занимает так много времени. Вы можете увеличить время ожидания по умолчанию до 110 секунд, что может позволить вам лучше устранять неполадки, в противном случае вам следует попытаться отладить код, поскольку причина не очевидна в опубликованном образце ASP.NET.

Чтобы изменить значение по умолчанию, укажите executionTimeout из httpRuntime в файле web.config.

Если вы подключаетесь к базе данных для аутентификации, вы можете посмотреть там и отследить, что и как получено.

...