Ошибка HTTP 500.19 и код ошибки: 0x80070021

У меня есть простая assembly webAPI от Visual Studio 2013. Она работает хорошо, когда я запускаю ее из VS13, но когда я копирую проект в локальном IIS, он дает мне следующую ошибку.

Ошибка HTTP 500.19 – Внутренняя ошибка сервера Запрошенная страница недоступна, поскольку связанные данные конфигурации для страницы недействительны.

Подробная информация об ошибке:

Модуль IIS Web Core

Уведомление BeginRequest

Обработчик еще не определен

Код ошибки 0x80070021

Ошибка конфигурации Этот раздел конфигурации не может использоваться на этом пути. Это происходит, когда секция заблокирована на родительском уровне. Блокировка по умолчанию (overrideModeDefault = «Deny») или явно указывается тегом местоположения с overrideMode = «Deny» или устаревшим allowOverride = «false».

Файл конфигурации \? \ C: \ inetpub \ wwwroot \ APITeslin \ web.config

Конфигурация Источник:

36:  37:  38:  

    Получил точно такую ​​же ошибку и пришел к этому вопросу. Как пояснил @SpaceBison в комментариях, этот ответ описывает решение – https://stackoverflow.com/a/12867753/404099 . Я заметил это слишком поздно, и он пропустил несколько шагов. Это то, что сработало для меня:

    Windows Server 2012, IIS 8.5 . Должен работать и для других версий.

    • Перейдите к диспетчеру сервера, нажмите добавить роли и функции.
    • В разделе ролей выберите: Веб-сервер
      • В разделе «Безопасность» выберите все (я исключил дайджест, ограничения IP и авторизацию URL, поскольку мы их не используем)
      • В разделе «Разработка приложений» выберите .NET Extensibility 4.5, ASP.NET 4.5 и обе записи ISAPI
    • В разделе функций выберите: NET 3.5, .NET 4.5, ASP.NET 4.5
    • В разделе веб-сервера выберите: Веб-сервер (все), Инструменты управления (Консоль управления IIS и Служба управления), Аутентификация Windows – если вы используете какой-либо из них

    Я получил эту ошибку при попытке разместить службу WCF в пустом приложении ASP.NET. Все это решение использовало платформу .NET 4.5, на IIS 8.5, работающую в Windows 8.1. Готов было открыть «Включить или отключить Windows-функции», перейдите в раздел WCF под расширенными службами ASP.NET 4.5 и проверьте активацию HTTP. Вам будет предложено перезагрузить систему. Скриншот

    Это должно исправить HTTP 500.19!

    EDIT 11-FEB-2016 Просто появилась проблема с Windows 10 Pro, IIS 10, на этот раз это был HTTP 404.0. Исправление остается прежним, включите «HTTP-активацию» в разделе «Возможности Windows» -> .NET Framework 4.6 Дополнительные службы -> Службы WCF -> Активация HTTP

    У меня также возникала такая же проблема, но после мозгового штурма с IIS и google в течение многих часов. Я нашел решение. Эта ошибка связана с тем, что некоторые настройки отключены в applicationHost.config IIS applicationHost.config .

    Ниже приведены шаги для решения:

    1. Перейдите в C:\Windows\System32\inetsrv\config\applicationHost.config и откройте в блокноте
    2. Измените следующее ключевое значение, присутствующее в

      • изменить это значение с “Запретить” на “Разрешить”

      • изменить это значение с “Запретить” на “Разрешить”

    Это сработало для меня.

    Если вы запускаете IIS на этом компьютере в первый раз, попробуйте запустить инструмент регистрации IIS ASP.NET (aspnet_regiis.exe).

    Вот как это сделать: если вы используете .net framework v4, откройте командную строку как администратор и смените каталог на свою базовую папку .net framework, используя:

     CD C:\Windows\Microsoft.NET\Framework\v4.0.30319 

    или, если вы используете 64-битный компьютер, используйте:

     CD C:\Windows\Microsoft.NET\Framework64\v4.0.30319 

    когда вы успешно перешли к соответствующему каталогу, запустите инструмент регистрации IIS ASP.NET, используя:

     aspnet_regiis -i 

    Если вы используете другую версию платформы .NET, просто замените v4.0.30319 на соответствующее имя папки.

    Надеюсь это поможет.

    Я решил это, выполнив следующее:

     WebServer(ISS)->WebServer->Application Development add .NET Extensibility 3.5 add .NET Extensibility 4.5 add ASP.NET 4.5 add ISAPI Extensions add ISAPI Filters 

    введите описание изображения здесь

    В Windows 8.1 IIS 8.5 решение для меня состояло в регистрации 4.5 с панели управления:

    Программы и функции> Включить или отключить функции Windows> Информационные информационные службы> Всемирные веб-службы> Возможности разработки приложений> Выберите ASP.NET 4.5

    Нажмите «ОК».

    Поскольку ошибка idnicates – «Это происходит, когда раздел заблокирован на родительском уровне». Чтобы разблокировать раздел, вы можете использовать appcmd.exe и выполнить следующую команду:

     %windir%\system32\inetsrv\appcmd.exe unlock config -section:system.webServer/handlers -commitpath:apphost 

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

    В нашем случае мы долгое время боролись с этой ошибкой. Оказывается, в панели управления, программах, includeся или выключаются функции windows.

    Мы выбрали Internet Information Services, всемирные веб-сервисы, функции разработки приложений, и там мы проверяем набор функций, связанных с нашей средой разработки. Например: ASP.NET 4.6. .NET Extensibility 4.6 и т. Д.

    Оно работает!

    Ваш web.config описывает, что вы используете проверку подлинности форм – убедитесь, что вы включили аутентификацию форм и отключили анонимную аутентификацию в IIS в меню «Аутентификация» для веб-сайта, работающего в IIS.

    Попробуйте разблокировать соответствующие параметры конфигурации IIS (7.5) на уровне сервера, а именно:

    1. Открыть диспетчер IIS
    2. Выберите сервер в панели «Подключения»
    3. Откройте редактор конфигурации в главной панели
    4. В раскрывающихся разделах выберите раздел для разблокировки, например system.webServer> defaultPath
    5. Нажмите « Разблокировать атрибут» в правой панели
    6. Повторите для любых других настроек, которые необходимо разблокировать
    7. Перезапустить IIS (необязательно). Выберите сервер на панели «Коннекшн», нажмите «Перезагрузка» в панели «Действия».

    В моем случае были правила для модуля URL Rewrite для IIS, но у меня не было установлен этот модуль. Вы должны проверить свой web.config, если есть какие-либо модули, но не установлены.

    и ее из web.config.

    Ну, мы используем Amazon Web Services, поэтому мы ищем сценарии и программы для решения этой проблемы. Поэтому я был на охоте за инструментом командной строки. Поэтому сначала я попробовал трюк

    c:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i

    но потому, что я запускаю облачную Windows Server 2012, она жаловалась

    This option is not supported on this version of the operating system. Administrators should instead install/uninstall ASP.NET 4.5 with IIS8 using the "Turn Windows Features On/Off" dialog, the Server Manager management tool, or the dism.exe command line tool. For more details please see http://go.microsoft.com/fwlink/?LinkID=216771.

    и я Googled и нашел официальную страницу поддержки Microsoft KB2736284 . Таким образом, есть инструмент командной строки dism.exe . Поэтому я попробовал следующее

    dism /online /enable-feature /featurename:IIS-ASPNET45

    но он жаловался и давал список featurenames, чтобы попробовать, поэтому я попробовал их один за другим, и я тестировал веб-страницу WebAPI после каждого, и он работал после нижнего в списке.

     dism /online /enable-feature /featurename:IIS-ApplicationDevelopment dism /online /enable-feature /featurename:IIS-ISAPIFilter dism /online /enable-feature /featurename:IIS-ISAPIExtensions dism /online /enable-feature /featurename:IIS-NetFxExtensibility45 

    Итак, теперь я могу перейти на сайт WebAPI и посмотреть информацию API. Это должно помочь нескольким людям. [Тем не менее, я еще не совсем из леса, и я не могу добраться до веб-сайта за пределами коробки. Все еще работаю над этим.]

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

     In Feature delegation Change 'Handler Mappings' from Read Only to Read/Write Change 'Modules' from Read Only to Read/Write Change 'SSL Settings' from Read Only to Read/Write 

    Для приложений .NET Core на Windows Server (в моем случае 2012 с IIS 10) он работал после установки .NET Core Windows Server Hosting bundle ( link ).

    Он работает и экономит мое время. Попробуйте HTTP Ошибка 500.19 – Внутренняя ошибка сервера – 0x80070021 (IIS 8.5)

    Решение, которое сработало для меня, было удалить мой текущий Web.config и добавить новый. Это решило проблему для меня

    Давайте будем гением компьютера.