IIS 7 + ASP.NET 4


17

У мене є програма ASP.NET, яку я намагаюся перетворити на додаток ASP.NET 4. Додаток досить простий. Я створив нову веб-програму в IIS 7.5, вказуючи на каталог, в якому існує програма ASP.NET.

Коли я намагаюся виконати програму, але ввівши http: // localhost: [port] у свій браузер, я отримую таку помилку:

Підсумок помилок
HTTP Помилка 500.21 - Внутрішній сервер обробки помилок "PageHandlerFactory-Integrated" має поганий модуль "ManagedPipelineHandler" у своєму списку модулів

Найбільш вірогідні причини:

  • Використовується керований обробник; однак ASP.NET не встановлений або не встановлений повністю.
  • У конфігурації списку модулів обробника є типографічна помилка.

Відповіді:


23

У мене така ж проблема, коли я намагаюся публікувати SL-додаток за допомогою VS2010, хоча раніше не було проблеми з .NET 3.5SP1 та VS2008.

Тому спробуйте запустити це ( %windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i), як описано тут forums.iis.net/t/1149449.aspx і тут www.gotknowhow.com/articles/fix-bad-module-managedpipelinehandler-in-iis7, і воно працює зараз. Тож проблема в ASp> NET 4.0 не встановлена ​​належним чином, так ... :)


1
працює для мене! Я встановив VS та IIS у неправильному порядку (спочатку VS), тоді ви опинитесь у цій ситуації
chris166

3

трюк "aspnet_regiis.exe -i" працював на мене.



1

У IIS Manager в розділі Сайти знайдіть каталог (веб-сторінку) та перетворіть у додаток. Виберіть дійсний пул додатків (або створіть новий), в якому використовується .NET v.2 або вище. Перезапустіть IIS. Ви закінчили.


0

2 речі для перевірки:

1) Ви встановили на коробку біти .NET 4.0?

2) Чи вказаний веб-сайт для використання ASP.NET 4.0?


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 = "integMode, runtimeVersionv2.0, bitness32" />

для 64-бітного
<add name = "ManagedEngine64" image = "% windir% \ Microsoft.NET \ Framework64 \ v2.0.50727 \ webengine.dll" preCondition = "integMode, runtimeVersionv2.0, bitness64" />

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.