У меня есть приложение ASP.NET, которое я пытаюсь преобразовать в приложение ASP.NET 4. Приложение довольно простое. Я создал новое веб-приложение в IIS 7.5, указывающее на каталог, в котором существует приложение ASP.NET.
Когда я пытаюсь запустить приложение, но ввожу http: // localhost: [порт] в свой браузер я получаю следующую ошибку:
Сводка ошибок
Ошибка HTTP 500.21 - Внутренний обработчик ошибок сервера «PageHandlerFactory-Integrated» имеет неверный модуль «ManagedPipelineHandler» в списке модулей.Наиболее вероятные причины:
- Используется управляемый обработчик; однако ASP.NET не установлен или не установлен полностью.
- В конфигурации списка модулей-обработчиков имеется типографская ошибка.
У меня такая же проблема, когда я пытаюсь опубликовать приложение SL с помощью VS2010, хотя раньше с .NET 3.5SP1 и VS2008 проблем не было.
Так что попробуйте запустить это (%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i
) как описано здесь форумы.iis.net/t/1149449.aspx и тут www.gotknowhow.com/articles/fix-bad-module-managedpipelinehandler-in-iis7 и теперь это работает. Итак, проблема в том, что ASp> NET 4.0 неправильно установлен, хууу ... :)
у меня сработал трюк "aspnet_regiis.exe -i".
В итоге мне пришлось переустанавливать платформу .NET 4.
В диспетчере IIS в разделе «Сайты» найдите свой каталог (веб-страницу) и «Преобразовать в приложение». Выберите действительный пул приложений (или создайте новый), в котором используется .NET v.2 или выше. Перезагрузите IIS. Вы сделали.
2 вещи, которые нужно проверить:
1) Вы установили на приставку биты .NET 4.0?
2) Настроен ли данный сайт на использование ASP.NET 4.0?
Это сработало для меня http://blogs.msdn.com/b/amol/archive/2009/03/31/aspx-pages-not-getting-served-on-iis-7.aspx
Решение: добавьте раздел глобальных модулей в applicationHost.config
<add name = "ManagedEngine" image = "% windir% \ Microsoft.NET \ Framework \ v2.0.50727 \ webengine.dll" preCondition = "IntegratedMode, runtimeVersionv2.0, bitness32" />
для 64 бит
<add name = "ManagedEngine64" image = "% windir% \ Microsoft.NET \ Framework64 \ v2.0.50727 \ webengine.dll" preCondition = "IntegratedMode, runtimeVersionv2.0, bitness64" />