.NET использует неправильный 2.0 machine.config вместо 4.0
У меня установлено веб-приложение.NET на IIS 7.0 Windows Server 2008 R1. Я установил.NET 4.0 на сервер и настроил пул приложений для 4.0 и интегрированный конвейер. По какой-то причине я получаю следующую ошибку:
(500.19) The configuration section 'system.web.extensions' cannot be read because
it is missing a section declaration.
Похоже, что он использует неправильно machine.config
файл из V2.0 .NET, а не machine.config
файл, который определил system.web.extensions
раздел конфигурации. Я доказал это, заменив machine.config
файл в платформе V2.0 с файлом из каркаса V4.0, и веб-приложение больше не выбрасывает 500.19
ошибка. Я попытался удалить и переустановить.NET 4.0, а также работает aspnet_regiis -i
,
Любые мысли о том, почему он будет пытаться использовать 2.0 machine.config
?
1 ответ
Не уверен, что это действительно причина / решение, но последнее, что я попробовал, это (в IIS Manager):
- Перейдите на сервер в правой панели (корневой узел)
- В списке функций откройте "Ограничения ISAPI и CGI"
- Есть 2 элемента с описаниями ASP.NET v4.0.30319 с ограничениями, установленными на Запретить
- Установите значение ограничения Разрешено
Это последнее, что я пробовал до того, как проблема исчезла.