Почему я не могу заставить ASP.NET 4.0 работать на Windows Server 2003 R2?
Я разрабатывал приложение ASP.NET 4.0 на своем локальном компьютере, и сегодня я попытался развернуть его на сервере. После развертывания я получил следующее сообщение при попытке зайти на сайт в моем браузере:
Сообщение об ошибке синтаксического анализатора: нераспознанный атрибут targetFramework. Обратите внимание, что имена атрибутов чувствительны к регистру.
Без проблем. Это означает, что на сервере все еще работает ASP.NET 2.0. Я просто обновлю его, верно?
Это было не так просто.
Сначала я установил.NET Framework v4.0. Я следовал инструкциям, которые я нашел по этой ссылке, чтобы включить ASP.NET ISAPI DLL в IIS. Когда я запускаю "cscript iisext.vbs /listfile ", я вижу в списке библиотеки DLL ASP.NET 4.0 и то, что они включены. Однако поведение моего приложения не изменилось. Я все еще получаю то же сообщение об ошибке.
Я подозреваю, что мне нужно изменить версию ASP.NET в конфигурации веб-сайта в IIS. Тем не менее, я не могу найти способ сделать это. Когда я щелкаю правой кнопкой мыши по веб-сайту, виртуальному каталогу, в котором находится мое приложение, или по пулу приложений в IIS, а затем нажимаю "Свойства" в контекстном меню, я ожидаю найти вкладку "ASP.NET" среди страниц свойств. это позволило бы мне изменить версию ASP.NET для этого сайта / приложения. Однако по какой-то причине нет вкладки "ASP.NET" или страницы свойств. Почему бы и нет? Как я могу это исправить и переключить мое приложение на.NET 4.0?
Опять же, это Windows Server 2003 R2, я считаю, что версия IIS 6.
2 ответа
Я думаю, что это приведет вас в правильном направлении:
Как переключить сайт на ASP.NET4.0 в Windows Server 2003 IIS6.0
Попробуйте запустить aspnet_regiis.exe -i из каталога платформы.Net 2.0, если отсутствует вкладка ASP.NET.
Изменить: если ASP.NET-вкладка все еще отсутствует:
Удалить IIS (включая ASP.Net)
Перезагрузите машину.
Переустановите IIS + ASP.net
Запустите aspnet_regiis -ir
Edit2: Как почему вкладка ASP.net отсутствует, этот пост может дать некоторые подсказки.
Я знаю, что ответ на этот вопрос уже был принят, но такая же ошибка также может возникнуть, если ваш сайт просто использует неправильный пул приложений. Убедитесь, что у вас есть пул приложений.net 4.0 или пул приложений asp.net 4.0, настроенный как активный для веб-приложения, а также убедитесь, что сам пул приложений запущен.