IIS 8.0 с помощью ASP.NET 3.5 и ASP.NET 4.5

Вон Йо

Совместимость

Версия Примечания.
IIS 8.0 ASP.NET 3.5 и ASP.NET 4.5 поддерживаются в IIS 8.0.
IIS 7.5 ASP.NET 3.5 и ASP.NET 4.5 поддерживаются в IIS 7.5.
IIS 7.0 ASP.NET 3.5 и ASP.NET 4.5 поддерживаются в IIS 7.0.

Проблема

Windows Server 2012 включает платформа .NET Framework 4.5 по умолчанию, а также дополнительную установку платформы .NET 3.5. Разработчикам часто требуется запускать смешанные веб-приложения в нескольких версиях платформа .NET Framework.

Решение

IIS 8.0 в Windows Server 2012 запускает приложения ASP.NET во всех версиях платформа .NET Framework, поддерживаемых в Windows Server 2012. Это означает, что ASP.NET приложения могут работать в IIS 8.0 с помощью платформа .NET Framework 3.5 или платформа .NET Framework 4.5. IIS 8.0 содержит версии платформа .NET Framework в разных пулах приложений, что позволяет нескольким ASP.NET приложениям с разными версиями платформа .NET Framework одновременно работать в Windows Server 2012.

IIS 8.0 также поддерживает управление как ASP.NET 3.5, так и ASP.NET 4.5 приложений с помощью графического средства диспетчера IIS, а также средств управления командной строкой IIS. Дополнительные сведения см. в статье iis 8.0 ASP.NET Configuration Management .

Пошаговые инструкции

Необходимые компоненты

Настройка IIS 8.0 с поддержкой ASP.NET 3.5 и ASP.NET 4.5

В Windows Server 2012 платформа .NET Framework 3.5 и платформа .NET Framework 4.5 изначально распознаются операционной системой. Это означает, что настройка на основе пользовательского интерфейса и на основе командной строки можно использовать для включения обеих версий платформа .NET Framework, а также для интеграции обеих версий ASP.NET с IIS 8.0.

В этом пошаговом руководстве мы будем использовать новый пользовательский интерфейс диспетчер сервера в Windows Server 2012 Server для демонстрации включения как ASP.NET 3.5, так и ASP.NET 4.5 в IIS 8.0.

  1. При первом входе на новый компьютер Windows Server 2012 будет отображаться новый диспетчер сервера пользовательский интерфейс. Нажмите кнопку "Добавить роли ", как показано ниже:
    Снимок экрана: новая диспетчер сервера U I с выделенными ролями.

  2. На первом экране мастера добавления ролей и компонентов нажмите кнопку "Далее". Откроется страница, на которой выбран нужный тип установки. Выберите установку на основе ролей или компонентов, как показано ниже:
    Снимок экрана: мастер добавления ролей и компонентов с выделенным параметром установки на основе ролей или компонентов.

  3. Нажмите кнопку " Далее". На следующем экране мастера появится запрос на выбор настраиваемого сервера.

  4. На следующем шаге мастера вам будет предложено выбрать одну или несколько ролей сервера. Прокрутите вниз в списке ролей и убедитесь, что проверка поле проверка веб-сервера (IIS), как показано ниже:
    Снимок экрана: список ролей сервера в мастере добавления ролей и компонентов с выделенным веб-сервером I S проверка.

  5. Нажмите кнопку "Далее ", чтобы перейти к следующему шагу, что позволяет выбрать дополнительные компоненты для установки на сервере. Нажмите кнопку "Далее" и перейдите к следующему шагу.

  6. На следующем шаге мастера отображаются общие сведения о роли веб-сервера (IIS ). Нажмите кнопку "Далее" и перейдите к следующему шагу. Теперь вы должны быть на шаге мастера, который выглядит следующим образом:
    Снимок экрана: список служб ролей для выбора и установки на веб-сервере I S с выделенным средством управления.

  7. Обратите внимание, что несколько вложенных функций по умолчанию для IIS уже были включены, так как вы выбрали роль сервера веб-сервера (IIS) ранее. Однако мы хотим включить как ASP.NET 3.5, так и ASP.NET 4.5 для запуска в IIS 8.0, поэтому нам необходимо включить некоторые дополнительные функции, связанные с IIS. Прокрутите вниз в списке служб ролей, пока не отобразится узел разработки приложений. Сначала этот узел свернут, щелкните узел и разверните его таким образом, чтобы его дочерние элементы отображались:
    Снимок экрана: список служб ролей с выделенным узлом

  8. Узел разработки приложений — это узел, в котором мы можем включить интеграцию ASP.NET с IIS. Обратите внимание, что в списке функций есть несколько проверка boxs с похожими именами. Пара проверка boxs, которые являются интересом для этого пошагового руководства:

    • ASP.NET 3. 5. Этот параметр позволяет ASP.NET 3.5 запускаться в IIS 8.0. Обратите внимание, что в Windows Server 2012 платформа .NET Framework 3.5 недоступен в составе базового образа ОС. Вместо этого полезные данные скачиваются из Интернета и необходимо подключиться к Интернету.
    • ASP.NET 4.5. Этот параметр позволяет запускать ASP.NET 4.5 в IIS 8.0.
  9. Сначала щелкните поле ASP.NET 3.5 проверка. При этом появится дополнительное диалоговое окно, как показано ниже:
    Снимок экрана: диалоговое окно с вопросом о добавлении функций, необходимых для точки S P 3 точки 5.

  10. Так как ASP.NET 3.5 интегрирована в программу установки Windows Server 2012, Windows Server 2012 знает все связанные зависимости, необходимые для включения ASP.NET 3.5 в IIS 8.0. В этом всплывающем диалоговом окне отображается только то, что будет автоматически извлечено и установлено. Так как мы хотим включить ASP.NET 3.5, нажмите кнопку "Добавить необходимые компоненты".

  11. Затем щелкните поле ASP.NET 4.5 проверка в списке функций служб ролей. Результат нажатия обоих ASP.NET связанных проверка boxes показан ниже:
    Снимок экрана: список функций служб ролей с выделенной точкой S P dot NET 4 5 проверка и выделен.

  12. Даже если вы выбрали только ASP.NET 3.5 и ASP.NET 4.5 функций, мастер автоматически включил ряд других элементов. Это делается автоматически, чтобы разработчики не должны явно выбирать различные компоненты, необходимые для сборки ASP.NET в Windows Server 2012. На этом этапе нажмите кнопку "Далее ", чтобы принять изменения.

  13. На шаге " Подтверждение выбора установки" отображается список всех компонентов, установленных при принятии изменений.
    Снимок экрана: выбор подтверждения установки, показывающий список всех компонентов, установленных при принятии изменений с выделенным подтверждением.

  14. На этом этапе нажмите кнопку "Установить ", чтобы принять изменения и установить полную поддержку ASP.NET в Windows Server 2012.

  15. Так как установка займет небольшое время, мастер отображает диалоговое окно хода выполнения во время выполнения установки:
    Снимок экрана: диалоговое окно

  16. Через несколько минут мастер показывает, что установка завершена:
    Снимок экрана: ход установки, показывающий успешное выполнение установки в мастере добавления ролей и компонентов.

  17. На этом этапе можно нажать кнопку "Закрыть " и выйти из мастера.

Изучение установки IIS 8.0

С установленной интеграцией IIS 8.0 и ASP.NET можно ознакомиться с базовым ASP.NET следом для IIS 8.0.

  1. В windows меню выберите "Все программы", а затем разверните меню Администратор istrative Tools. В результирующем списке найдите диспетчер службы IIS (IIS) и выберите его, чтобы запустить графическое средство управления IIS:
    Снимок экрана: меню Администратор istrative Tools, развернутое с выделенным службы IIS I S Manager.

  2. После запуска диспетчера IIS разверните узел сервера в левом окне, чтобы отображались узлы пулов приложений и узлы сайтов . При этом диспетчер IIS появится диалоговое окно с запросом о том, следует ли оставаться в сети с последними компонентами веб-платформы. В этом пошаговом руководстве можно нажать кнопку "Нет". На этом этапе диспетчер IIS выглядит следующим образом:
    Снимок экрана: диспетчер I S Manager с узлом пулов приложений и узлом сайтов, развернутыми с выделенным установщиком веб-платформы.

  3. Щелкните узел пулов приложений, чтобы отобразить пулы приложений, которые теперь были установлены для использования IIS 8.0:
    Снимок экрана: узел пулов приложений с списком пулов приложений, установленных для использования I S 8 dot 0.

  4. По умолчанию можно увидеть, что шесть разных пулов приложений создаются по умолчанию, если для IIS 8.0 включены как ASP.NET 3.5, так и ASP.NET 4.5. Четыре приложения являются новыми для IIS 8.0, а два других пула приложений перенесены из предыдущих выпусков Windows.

    • Обратите внимание, что в столбце версии платформа .NET Framework показаны версии 2.0 и версии 4.0 для версий платформа .NET Framework, они приравниваются к ASP.NET 3.5 и ASP.NET 4.5. Из-за внутренних принципов привязки пулов приложений к платформа .NET Framework версиям фактическое имя версии, записанное в конфигурацию (и таким образом отображаемое в средстве), соответствует исходной версии файла платформа .NET Framework.
    • Классическая версия .NET AppPool и DefaultAppPool существовали в предыдущих версиях Windows и, следовательно, продолжает создаваться для IIS 8.0. Обратите внимание, что поскольку платформа .NET Framework 4.5 по умолчанию является платформа .NET Framework для использования Windows Server 2012, значение DefaultAppPool в IIS 8.0 также использует более новую версию платформа .NET Framework.
    • Другие четыре пула приложений являются новыми в Windows Server 2012. Существует два пула приложений для запуска платформа .NET Framework 3.5 (.NET версии 2.0 и .NET версии 2.0) и двух пулов приложений для запуска платформа .NET Framework 4.5 (платформа .NET Framework 4.5 и платформа .NET Framework классической версии 4.5).
    • Разница между "классическим" и "не классическим" пулами приложений — это режим управляемого конвейера, поддерживаемый в каждом типе пула приложений. Два пула приложений, заканчивающиеся "классическим", поддерживают более старый классический режим конвейера Windows Server 2003 для ASP.NET, а другие два пула приложений используют более новый интегрированный режим конвейера для ASP.NET представлен в Vista/IIS7.0.
  5. Чтобы увидеть узел веб-сайта по умолчанию, разверните узел "Сайты " в левой части экрана, чтобы узел веб-сайта по умолчанию был виден:
    Снимок экрана: узел веб-сайта по умолчанию, на котором выделен узел веб-сайта по умолчанию.

  6. По умолчанию установки IIS всегда имеют "Веб-сайт по умолчанию", настроенный для прослушивания HTTP-запросов через порт 80. Детализация веб-сайта по умолчанию, чтобы узнать, какая версия ASP.NET поддерживается по умолчанию. Щелкните правой кнопкой мыши веб-сайт по умолчанию, а затем выберите "Управление веб-сайтом" и выберите "Дополнительно" Параметры, как показано ниже:
    Снимок экрана: главная веб-сайт по умолчанию с выбранным и выделенным дополнительным Параметры для управления веб-сайтом и дополнительными Параметры.

  7. Откроется диалоговое окно "Расширенный Параметры", показывающее (среди прочего) пул приложений, используемый для запуска веб-сайта по умолчанию. Как показано на рисунке ниже, веб-сайт по умолчанию выполняется в пуле приложений с именем DefaultAppPool:
    Снимок экрана: диалоговое окно

  8. Если щелкнуть небольшую кнопку с многоточием в правой части пула приложений, появится дополнительное диалоговое окно, отображающее дополнительные сведения о defaultAppPool. Как отмечалось ранее, значение по умолчанию defaultAppPool используется для ASP.NET 4.5 для IIS 8.0, поэтому ASP.NET 4.5 приложения, развернутые на веб-сайте по умолчанию, будут работать без дополнительной настройки.
    Снимок экрана: диалоговое окно

  9. На этом этапе нажмите кнопку "Отмена", чтобы отменить диалоговое окно "Выбор пула приложений" и диалоговое окно "Дополнительное Параметры".

Выполнение приложений ASP.NET 3.5 и ASP.NET 4.5

Теперь, когда вы изучили состояние установки IIS 8.0, попробуйте запустить некоторый пример кода ASP.NET, чтобы убедиться, что оба приложения ASP.NET 3.5 и ASP.NET 4.5 могут работать одновременно на одной установке IIS 8.0.

Пример кода для ASP.NET 3.5 и ASP.NET 4.5 содержится в следующих .zip:

Снимок экрана: примеры zip-файла dot.

Сначала настройте простое приложение ASP.NET 3.5 в IIS 8.0:

  1. Откройте файл examples.zip.

  2. В Windows Обозреватель на компьютере с Windows Server 2012 перейдите в каталог wwwroot для установки IIS. Например, если вы установили IIS на диске C:\ , каталог wwwroot будет находиться в c:\inetpub\wwwroot.

  3. Скопируйте папку example35 из "examples.zip" и вставьте ее в каталог c:\inetpub\wwwroot. После завершения структуры каталога должен выглядеть следующим образом:
    Снимок экрана: локальный каталог на диске C с выделенным примером 35 папки.

  4. Только что созданную папку Example35 необходимо настроить в качестве приложения ASP.NET 3.5 в диспетчере IIS. Вернитесь в окно диспетчера IIS, щелкните узел веб-сайта по умолчанию и выберите "Обновить". В представлении дерева дочерних узлов на веб-сайте по умолчанию теперь отображается папка example35:
    Снимок экрана: представление дерева дочерних узлов под узлом веб-сайта по умолчанию с выделенным примером 35 папок.

  5. Щелкните правой кнопкой мыши папку Example35 и выберите "Преобразовать в приложение":
    Снимок экрана: пример 35 папки, щелкнув правой кнопкой мыши, и выбран параметр

  6. Откроется диалоговое окно "Добавление приложения ". По умолчанию все каталоги в веб-сайте по умолчанию являются частью пула приложений с именем DefaultAppPool. Это означает, что недавно созданные папки, содержащие ASP.NET, выполняются как ASP.NET приложения 4.5 по умолчанию.
    Снимок экрана: диалоговое окно

  7. Так как мы хотим запустить папку example35 как приложение ASP.NET 3.5, пул приложений необходимо изменить. Нажмите кнопку " Выбрать" и откроется диалоговое окно "Выбор пула приложений". Измените пул приложений на .NET версии 2.0 , как показано ниже:
    Снимок экрана: диалоговое окно

  8. Нажмите кнопку "ОК", чтобы принять изменение пула приложений, а затем нажмите кнопку "ОК", чтобы зафиксировать изменения в IIS. Откроется окно диспетчера IIS. В представлении "Дерево", отображаемом "Веб-сайт по умолчанию", значок для примера35 изменен, чтобы указать, что теперь это отдельное приложение ASP.NET.
    Снимок экрана: представление дерева веб-сайта по умолчанию, показывающее веб-сайт по умолчанию и выделенный значок, например 35 папок, измененных.

  9. На этом этапе запустите экземпляр Обозреватель Интернета и перейдите по следующему URL-адресу:

    http://localhost/example35

    После короткой паузы приложение отображает список платформа .NET Framework функций, поддерживаемых в этом приложении.

  10. в Windows Обозреватель, если перейти к c:\inetpub\wwwroot\example35 каталогу, можно использовать блокнот для просмотра кода для "default.aspx" и сведений в "web.config". Например, содержимое web.config включает директивы, которые настраивают компиляторы платформа .NET Framework для запуска в режиме "3.5". Код платформа .NET Framework в "default.aspx" демонстрирует некоторые конструкции C#, представленные в .NET 3.5, в частности запросы LINQ-to-Object.

Теперь, когда запущено приложение ASP.NET 3.5, можно создать второе приложение ASP.NET, но на этот раз настройте его для использования платформа .NET Framework 4.5.

  1. Вернитесь в окно Windows Обозреватель с открытым файлом .zip "examples.zip".

  2. Откройте содержимое папки example45.

  3. Во втором окне Обозреватель Windows, которое вы открыли, перейдите в c:\inetpub\wwwrootраздел .

  4. Скопируйте файл default.aspx из файла .zip и вставьте его непосредственно в c:\inetpub\wwwroot. Содержимое папки c:\inetpub\wwwroot должно выглядеть следующим образом:
    Снимок экрана: папки диска C с выделенными точками p x-файла по умолчанию.

  5. Теперь вернитесь в Интернет Обозреватель и перейдите по следующему URL-адресу:

    http://localhost/default.aspx

    После короткой паузы второй пул приложений начнет работать с приложением ASP.NET 4.5 для веб-сайта по умолчанию. В браузере снова отображается список функций платформа .NET Framework, поддерживаемых в этом приложении, с новой записью в конце списка для динамически типизированных переменных (то есть динамические ключевое слово, представленные в платформа .NET Framework 4.0/4.5). Обратите внимание, что в отличие от приложения "example35", требующего специальных записей web.config, для настройки и запуска страницы "default.aspx" на веб-сайте по умолчанию не требуется. Это связано с тем, что платформа .NET Framework 4.5 является платформа .NET Framework по умолчанию, используемой приложениями ASP.NET в IIS 8.0, и в результате дополнительная конфигурация не требуется.

  6. Если вы используете Блокнот для открытия только что скопированной страницы "default.aspx", вы также увидите несколько изменений по сравнению с версией в каталоге example35. Директивы пространства имен в верхней части страницы отсутствуют, так как платформа .NET Framework 4.5 используется по умолчанию в IIS 8.0. Код на странице демонстрирует использование динамической переменной, которая представляет собой концепцию компилятора, представленную в платформа .NET Framework 4.0/4.5.

Итоги

IIS 8.0 поддерживает запуск как ASP.NET 3.5, так и ASP.NET 4.5 приложений на одном компьютере с использованием разных пулов приложений для размещения каждой версии платформа .NET Framework. Служба IIS 8.0 поддерживает несколько версий платформа .NET Framework позволяет разработчикам и администраторам использовать все преимущества IIS 8.0 при сохранении обратной совместимости с веб-приложениями, перенесенными из Windows Server 2008 R2.