Назад | Перейти на главную страницу

Ошибка HTTP 500.19 в Windows Server 2008 IIS 7

Я пытаюсь обновить веб-службу WCF с .NET 3.0 до 4. Я запустил

Aspnet_regiis.exe

и

ServiceModelReg.exe

А также изменил пул приложений для использования v4.0. Я перестроил служебную dll с .NET 4.0 в качестве цели и переместил ее в каталог / bin на моем сайте.

Я столкнулся с ошибкой, которая сводит меня с ума. Всякий раз, когда я пытаюсь зайти на сайт, я получаю следующую ошибку:

HTTP Error 500.19 - Internal Server Error
The requested page cannot be accessed because the related configuration data for the page is invalid.

Раздел конфигурации 'system.serviceModel' не может быть прочитан, поскольку в нем отсутствует объявление раздела.

Я пробовал решения, которые нашел в Google, и ничего не работает. Я чувствую, что кто-то более опытный с IIS 7 точно знает, что не так. Может ли кто-нибудь помочь с этой проблемой

Я нашел проблему. Мне нужно было установить исправление описано здесь, который является шагом 3 в «Единовременной процедуре настройки образцов WCF» для эти Примеры кода WCF.

Попробуйте aspnet_regiis.exe / iru

Что можно проверить:

  1. Вы изменили ссылки WCF в своем приложении на версии Framework 4.0?

  2. Вот статья службы поддержки Microsoft: Сообщение об ошибке после установки .NET Framework 4.0: «Не удалось загрузить тип 'System.ServiceModel.Activation.HttpModule'»:

    Эта проблема возникает из-за того, что в файле Applicationhost.config для службы активации процессов Windows (WAS) определен следующий раздел, и этот раздел несовместим с .NET Framework 4.0 [...]

  3. .svc: убедитесь, что IIS и WCF правильно установлены и зарегистрированы: http://msdn.microsoft.com/en-us/library/aa751792.aspx

Убедитесь, что функция активации WCF HTTP установлена ​​в разделе «Роли / компоненты сервера» (это будет версия 3.5), затем переустановите .NET Framework 4.0. (Вам нужно будет установить его из загрузки, он не является частью компонентов / функций Windows)

Если вам повезет, это должно перерегистрировать карты сценариев таким образом, чтобы .NET 4 успешно получал запросы активации WAS HTTP от IIS вместо обхода до 3.5, который не понимает, что его просят сделать.

Теоретически, aspnet_regiis / i из каталога .NET Framework 4.0 тоже должны сделать это, но вы сказали, что уже пробовали это.