IIS7: процесс, обслуживающий пул приложений «ГГГГГ», потерпел фатальную ошибку связи со службой активации процессов Windows.

Мы работаем на 32-разрядном сервере Windows Server 2008 с версией IIS 7.
Мы пытаемся опубликовать веб-приложение asp.net 4.0, и до сих пор наши попытки привели только к нескольким предупреждениям в журнале сервера, даже не остановка пула приложений 4.0

У процесса, обслуживающего пул приложений "ASP.NET v4.0", произошла фатальная ошибка связи со службой активации процессов Windows. Идентификатор процесса был «1904». Поле данных содержит номер ошибки.

Приложение работает в пуле приложений 4.0 и на веб-сайте по умолчанию.
У нас также есть некоторые старые .asp, работающие безупречно.
Даже при попытке опубликовать пустой (читай только 1 строку текста) .aspx-файл он с треском провалился ... давно закончились идеи о том, что делать, поэтому любая форма ввода приветствуется ...


person Enror    schedule 26.08.2011    source источник
comment
@ScottE Link мертв   -  person Martijn    schedule 24.08.2015
comment
Обновленная ссылка: mvolo.com/   -  person William Gross    schedule 28.01.2016
comment
В моем случае проблема заключалась в неограниченном рекурсивном цикле в коде моего приложения.   -  person Mohsen Tavoosi محسن طاوسی    schedule 19.05.2016
comment
Я знаю, что пост старый, но должен сказать, что когда я искал решение моей проблемы, это не помогло. Я должен сказать, что моя проблема была связана с пользователями базы данных. У них не было разрешений EXECUTION. C-ya.   -  person MaGnumX    schedule 25.02.2021


Ответы (6)


Убедитесь, что для каждого пула приложений в IIS в разделе Advanced Settings Enable 32 bit Applications установлено значение True.

Скриншот IIS

person Peter Bromberg    schedule 26.08.2011
comment
Не могли бы вы объяснить, почему это решит проблему OP? Я спрашиваю, потому что столкнулся с той же проблемой на 64-битной Windows Server 2008 R2 и хотел бы знать, можно ли обобщить это решение для моего случая. Спасибо! - person sfarbota; 03.10.2013
comment
Тот же ответ, что и здесь, stackoverflow.com/a/7920145/28411, так что, похоже, это что-то для него. К сожалению, у меня не сработало. - person RJFalconer; 11.11.2013
comment
Недавно я столкнулся с этой проблемой, когда продукт, подключенный к ODBC, был перемещен на новый сервер. Установка значения true для параметра Enable 32-Bit Application решила проблему. - person Josh; 15.04.2014
comment
что, если мне не нужны 32-битные приложения в AppPool, а 64-битные действительно нужны? каково решение для сценариев «Запускать только 64-разрядные версии»? - person Zafar; 28.04.2014
comment
Была такая же проблема. Но это странно. Я переключаю этот параметр на true, применяю изменение, а затем возвращаюсь и снова устанавливаю его на false и угадаю, что, он все еще работает ... Я озадачен этим ... - person Marc-Andre R.; 13.08.2015
comment
Это отвлекающий маневр, а не решение проблемы. Проблема в том, что вызывает сбой приложения. - person Stan; 30.03.2017
comment
Для меня журналы Windows показали проблему с виртуальной памятью процесса, которую нельзя было увеличить. Я думаю, что настройка Enable 32Bits Application ограничивает размер процесса 2 ГБ и просто заставляет перезапуск пула при достижении лимита. Вы также можете установить лимит виртуальной памяти в дополнительных параметрах пула приложений. - person Pak; 08.06.2017
comment
Голосование против. Стэн прав: проблема в том, что вызывает сбой приложения. Этот обходной путь вызовет у вас серьезные головные боли, если вам потребуется, чтобы пул приложений работал с 64-разрядной версией. - person Morten Gorm Madsen; 15.03.2018

Я отлаживал проблему большую часть дня, и когда я был близок к сжиганию здания, я обнаружил Инструмент Process Monitor от Sysinternals.

Установите для него мониторинг w3wp.exe и проверку последних событий перед выходом после запуска запроса в браузере. Надеюсь, что это поможет дальнейшим читателям.

person Grozz    schedule 25.05.2013
comment
У меня отсутствовали пакеты nuget (в моем случае System.Net.Primitives) - person Dany Gauthier; 29.04.2015
comment
В моем случае проблема заключалась в неограниченном рекурсивном цикле в коде моего приложения. - person Mohsen Tavoosi محسن طاوسی; 19.05.2016
comment
У меня было множество недостающих файлов и некоторая неправильная сборка. Что-то не так с моей настройкой развертывания. - person Jason Cheng; 26.02.2019
comment
В моем случае проблема заключалась в ApplicationPoolIdentity, у которого не было разрешений на чтение. см. stackoverflow.com/questions/7334216/ - person mathijsuitmegen; 23.10.2019
comment
Для меня это была перезапись URL-адресов и маршрутизация запросов приложений, не распознаваемая IIS. - person jrap; 12.05.2021

Инструмент диагностики отладки (DebugDiag) может быть вам палкой-выручалочкой. Он создает и анализирует аварийные дампы IIS. Я разобрался со своим падением за считанные минуты, как только увидел стек вызовов. https://support.microsoft.com/en-us/kb/919789

person mhenry1384    schedule 06.11.2016
comment
Для получения дополнительной информации, вот статья в блоге TechNet, показывающая, как настроить инструмент DebugDiag для перехвата аварийного дампа: blogs.msdn.microsoft.com/parvez/2016/08/06/ - person Jeff Miles; 08.09.2017

Когда у меня возникла эта проблема, я установил 'Remote Tools для Visual Studio 2015 'из MSDN. Я подключил свой локальный VS к серверу для отладки.

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

person Dan Atkinson    schedule 23.02.2017

Я столкнулся с этим недавно. Наша организация ограничивает учетные записи, запускающие пулы приложений, выбранным списком серверов в Active Directory. Я обнаружил, что не добавил ни одну из машин, на которых размещено приложение, в список «Вход в систему» ​​для учетной записи в AD.

person JMM    schedule 01.08.2017

Для меня проблема заключалась в файле конфигурации, в котором отсутствовал элемент.

person Jon    schedule 06.10.2020