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


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

ошибка HTTP 500.19-Внутренняя ошибка сервера запрошенная страница не может быть доступ, поскольку соответствующие данные конфигурации для страницы недействительный.

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

модуль IIS Web Ядро

уведомления BeginRequest

проводник пока не определено

Код Ошибки 0x80070021

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

Конфигурационный Файл?C:inetpubwwwrootAPITeslinweb.конфигурации

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

36:   <system.webServer>  
37:     <handlers>  
38:       <remove name="ExtensionlessUrlHandler-Integrated-4.0" />
16 153

16 ответов:

получил точно такую же ошибку и пришел на этот вопрос. Как упоминалось в комментариях @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. Gotcha должен был открыть "включить или выключить функции Windows" перейдите в раздел WCF под ASP.NET 4.5 дополнительные службы и проверка активации HTTP. Вам будет предложено перезагрузить систему. Screen Shot

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

EDIT 11-FEB-2016 только что получил проблему на Windows 10 Pro, IIS 10, на этот раз это был HTTP 404.0. Исправление по-прежнему тот же, свою очередь, на "активация через HTTP" в разделе функции - > окна .Net фреймворк 4.6 дополнительные услуги -> Услуги -> WCF через HTTP активации!--2-->

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

Ниже приведены шаги по решению:

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

    • <section name="handlers" overrideModeDefault="Deny" /> измените это значение с "запретить" на "Разрешить"

    • <section name="modules" allowDefinition="MachineToApplication" overrideModeDefault="Deny" /> измените это значение с "запретить"на " Разрешить"

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

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

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

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

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

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

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

aspnet_regiis -i

если вы используете другую версию .NET framework, просто замените 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

enter image description here

на 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.

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

мы выбрали информационные службы Интернета, Всемирные веб-службы, функции разработки приложений и там мы проверяем набор функций, связанных с нашей средой разработки. Например: ASP.NET 4.6. .Чистая расширяемости 4.6 и т. д.

Это работает!

веб.конфигурация описывает, что вы используете проверка подлинности с помощью форм - убедитесь, что вы включили проверку подлинности форм и отключить анонимная проверка подлинности в IIS в меню Проверка подлинности для веб-сайта, работающего в IIS.

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

  1. открыть диспетчер IIS
  2. выберите сервер на панели подключения
  3. открыть Редактор Конфигурации на главной странице
  4. в раскрывающемся списке разделы Выберите раздел для разблокировки, например

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

пожалуйста <staticContent /> линию и стер его из интернета.конфиг.

Ну, мы используем 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.

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

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

но он жаловался и дал список имен функций, чтобы попробовать, поэтому я попробовал их один за другим, и я проверил свою веб-страницу 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 (ссылке).

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

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