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

Почему я не могу заставить ASP.NET 4.0 работать в Windows Server 2003 R2?

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

Сообщение об ошибке парсера: нераспознанный атрибут targetFramework. Обратите внимание, что имена атрибутов чувствительны к регистру.

Хорошо, нет проблем. Это означает, что на сервере все еще работает ASP.NET 2.0. Я просто обновлю его, да?

Это было не так просто.

Сначала я установил .NET Framework v4.0. Я выполнил инструкции, которые нашел на эта ссылка чтобы включить библиотеки DLL ASP.NET ISAPI в 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.

Я думаю, это приведет вас в правильном направлении:

Как переключить веб-сайт на ASP.NET4.0 в Windows Server 2003 IIS6.0

Попробуйте запустить aspnet_regiis.exe -i из каталога инфраструктуры .Net 2.0, если вкладка ASP.NET отсутствует.

Изменить: если вкладка ASP.NET все еще отсутствует:

  1. Удалите IIS (включая ASP.Net)

  2. Перезагрузите машину.

  3. Переустановите IIS + ASP.net

  4. Запустите aspnet_regiis -ir

Edit2: почему отсутствует вкладка ASP.net, этот пост может дать некоторые подсказки.

"... Очевидно, в Windows Server 2003 64 Bit Editions и Windows Server 2003 R2 вкладка ASP.NET в IIS не отображается, без исправлений, вот и все, ее больше нет! .... Вкладка ASP.NET не отображается на 64-разрядные выпуски Windows Server 2003 и Windows Server 2003 R2. Эта вкладка также не отображается, если только одна версия ASP.NET разрешена в расширениях веб-служб ».

Я знаю, что ответ на этот вопрос уже был принят, но эта же ошибка также может возникнуть, если ваш сайт просто использует неправильный пул приложений. Убедитесь, что у вас есть пул приложений .net 4.0 или пул приложений asp.net 4.0, настроенный как активный для веб-приложения, а также убедитесь, что сам пул приложений запущен.