Я настраиваю проект MVC 3 для работы с локальной установкой IIS и обнаружил следующую ошибку 500:
У обработчика «PageHandlerFactory-Integrated» есть неверный модуль «ManagedPipelineHandler» в его списке модулей.
Оказывается, это потому, что ASP.Net не был полностью установлен с IIS, хотя я установил этот флажок в диалоговом окне «Добавить функцию». Чтобы это исправить, я просто запустил следующую команду в командной строке
%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i
Если бы я работал в 32-битной системе, это выглядело бы следующим образом:
%windir%\Microsoft.NET\Framework\v4.0.21006\aspnet_regiis.exe -i
У меня вопрос, есть ли способ установить IIS на Windows 7, чтобы использовать .NET 4.0 (MVC 3) без этого дополнительного шага?
Ответы:
Оказывается, это потому, что ASP.Net не был полностью установлен с IIS, хотя я установил этот флажок в диалоговом окне «Добавить функцию». Чтобы это исправить, я просто запустил следующую команду в командной строке
Если бы я работал в 32-битной системе, это выглядело бы следующим образом:
Помните, чтобы запустить командную строку от имени администратора ( CTRL+ SHIFT+ ENTER)
источник
Принятый ответ правильный, однако иногда вы можете получить сообщение об ошибке « Aspnet_regiis.exe не распознается как внутренняя или внешняя команда, работающая программа или пакетный файл ».
Чтобы решить это, попробуйте следующее:
Убедитесь, что ваша установка .NET 4.0 не повреждена (запустите программу установки и восстановите ее). Также есть вероятность, что он вообще не установлен на вашем компьютере.
Если вы уверены, что у вас не установлен .NET 4.0 и хотите запустить его как .NET 2.0, попробуйте следующее :
источник
Чтобы решить проблему, попробуйте
repair the .net framework 4
и затем выполните командуисточник
Ошибка: обработчик «PageHandlerFactory-Integrated» имеет неверный модуль «ManagedPipelineHandler» в своем списке модулей
Я нашел статьи, чтобы решить эту проблему, просто запустив следующие команды в командной строке:
Если бы система была 32-битной, она бы выглядела так:
Но когда я попытался выполнить эти команды с помощью командной строки, я получил следующее сообщение об ошибке / предупреждение:
Чтобы исправить это на Windows 8.1, я бы предложил сделать следующее.
Решение:
Перейти: Включение или отключение функций Windows -> Информационные службы Интернета -> Службы всемирной паутины -> Функции разработки приложений -> Включить ASP.NET 4.5
Это должно решить проблему.
источник
Сначала я бы проверил очевидное: пул приложений настроен на правильную структуру и что ваше приложение IIS фактически указывает на папку, в которую вы помещаете свои файлы.
источник
Если вы хотите развернуть приложение MVC без установки MVC, вы можете развернуть DLL MVC вместе с вашим приложением . Это позволяет обойти установку MVC 3. Вы можете использовать функции в некоторых пространствах имен .Net 4.0, не устанавливая .Net, используя аналогичный подход.
источник
Я добавил пути ISAPI / CGI для .Net 4. Это не помогло решить проблему. Поэтому я выполнил ремонт установки .Net V4 (Client и Extended). Который попросил перезагрузку. Это исправило это для меня.
источник
Чтобы исправить это на компьютере под управлением Windows 8.1 Professional, выполните следующие действия.
Установите установщик веб-платформы. http://www.microsoft.com/web/downloads/platform.aspx
В установщике веб-платформы установите ASP.NET 4.5 (эта функция имеет одну зависимость).
Если вы просто попробуете вышеупомянутую команду командной строки cmd из самого популярного ответа, вы получите следующее сообщение об ошибке / предупреждение:
C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319> aspnet_regiis.exe -i Microsoft (R) ASP.NET RegIIS версия 4.0.30319.33440 Утилита администрирования для установки и удаления ASP.NET на локальном компьютере. Авторское право (C) Microsoft Corporation. Все права защищены. Начните установку ASP.NET (4.0.30319.33440). Эта опция не поддерживается в этой версии операционной системы . Вместо этого администраторам следует установить / удалить ASP.NET 4.5 с IIS8, используя диалоговое окно «Включение и отключение компонентов Windows», средство управления диспетчером сервера или средство командной строки dism.e xe. Для получения дополнительной информации , пожалуйста , см http://go.microsoft.com/fwlin к /? LinkID = 216771. Закончена установка ASP.NET (4.0.30319.33440).
источник
Я попытался сделать aspnet_regiis в командной строке, но я получил ответ, что у меня нет прав администратора. Затем, после еще одного поиска в Google и поиска решения, я попытался щелкнуть правой кнопкой мыши cmd и запустить его от имени администратора. Подтвердил да, когда появился диалог, снова запустил aspnet_iis и муравей работал как чудо. Вкратце: 1. проверьте .NET framework в app_pool 2. запустите cmd от имени администратора 3. запустите aspnet_regiis -i
источник
У меня была такая же проблема, и мое решение было:
Перейдите к разделу «Включение или отключение функций Windows»> Информационные службы Интернета> Службы всемирной паутины> Функции разработки приложений> Включить ASP.NET 4.5
источник
У меня была похожая проблема с Windows Server 2012, установка функции « Сервер приложений » в диспетчере серверов устранила проблему.
источник
-Использование функции инициализации приложения -запрос неправильных страниц (.asp) из-за наследования конфигурации
500.21 произойдет только при первом подключении пользователя. Последующие соединения работают.
Решено путем исправления коллекции url applicationInitialization на веб-сайте .NET.
источник
запустить
cmd
перетащите
Aspnet_regiis.exe
в командную строку из:тип
-i
(напримерAspnet_regiis.exe -i
)нажмите ввод
Удачи!
источник
У меня возникла эта проблема, и я обнаружил, что удаление следующей папки помогло, даже с не-Express Edition. Express:
C:\Users\<user>\Documents\IISExpress
источник
Ничто из этого не помогло мне. Поэтому, поскольку я сравнил различные пулы приложений с одним, который работал с тем, который не работал, мне пришлось перейти в Дополнительные настройки для пула приложений и установить
Включить 32-битные приложения = true
Тогда все работало нормально!
источник
У меня была такая же проблема, в моем случае обработчик был в двух местах:
И когда я удалил свой обработчик из [system.webServer], моя проблема исчезла.
источник
в некоторых случаях эта ошибка возникает из-за повреждения конфигурации Microsoft .NET Framework 4.0 для ASP .NET, что может произойти, если Microsoft Visual Studio 2012 была установлена до Visual Studio 2010 или Microsoft SQL Server 2008.
Попробовав разные вещи, я пришел к выводу, чтобы восстановить вашу установку .Net, выполнив следующую команду. Для получения дополнительной информации перейдите по ссылке.
https://msdn.microsoft.com/en-us/library/hh168535(v=nav.80).aspx
источник
Чтобы решить эту проблему, попробуйте восстановить .net Framework 4, а затем выполните команду
введите описание изображения здесь
источник
У меня была эта проблема на одном из моих веб-серверов при попытке переключить пул приложений с классического на интегрированный. Он отлично работал на двух других моих веб-серверах, а не только на этом. Это Server 2012, поэтому вы не можете выполнить aspnet_regiis, и не было папки setupcache, чтобы попытаться это исправить. Все было настроено правильно под особенности.
После прохождения% windir% \ system32 \ inetsrv \ config \ applicationHost.config я обнаружил один критический пропущенный бит. Под моим неработающим отсутствовали следующие две строки:
Как только я их добавил, все работало отлично.
источник