Установка веб-пакетов вручную

Джейсон Ли

В этом разделе описывается, как вручную импортировать пакет веб-развертывания в службы IIS.

В статье Создание и упаковка проектов веб-приложений описывается, как средство веб-развертывания IIS (веб-развертывание) в сочетании с Microsoft Build Engine (MSBuild) и конвейером веб-публикации (WPP) позволяет упаковывать проекты веб-приложений в один ZIP-файл. Этот файл, известный как пакет веб-развертывания (или просто пакет развертывания), содержит все содержимое и сведения о конфигурации, необходимые IIS для повторного создания веб-приложения на веб-сервере.

После создания пакета веб-развертывания его можно опубликовать на сервере IIS различными способами. Во многих сценариях вы захотите воспользоваться преимуществами точек интеграции между MSBuild, WPP и веб-развертыванием для удаленного создания и установки веб-пакетов в рамках автоматизированного или одношагового процесса сборки и развертывания. Этот процесс описан в разделе Развертывание веб-пакетов. Однако это не всегда возможно. Предположим, вы хотите развернуть веб-приложение в рабочей среде с выходом в Интернет. По соображениям безопасности такая рабочая среда по крайней мере может находиться за брандмауэром в подсети, которая отделена от сервера сборки, в сети периметра (также известной как dmz, демилитаризованная зона и экранированная подсеть). Во многих случаях рабочая среда будет находиться в отдельном домене или в физически изолированной сети.

В этих сценариях единственным вариантом может быть перенос веб-пакета на целевой сервер и его импорт вручную в IIS. Хотя этот подход исключает автоматическое развертывание, он по-прежнему является весьма эффективным методом публикации веб-приложения: вы просто копируете один ZIP-файл на веб-сервер и используете мастер, который поможет вам выполнить процесс импорта.

Этот раздел является частью серии учебников, основанных на требованиях к корпоративному развертыванию вымышленной компании Fabrikam, Inc. В этой серии руководств используется пример решения диспетчера контактов для представления веб-приложения с реалистичным уровнем сложности, включая приложение ASP.NET MVC 3, службу Windows Communication Foundation (WCF) и проект базы данных.

Обзор задачи

Чтобы импортировать пакет веб-развертывания в IIS, вам потребуется выполнить следующие высокоуровневые задачи:

  • Создайте пакет веб-развертывания с помощью командной строки MSBuild, командной сборки или Visual Studio 2010.
  • Скопируйте веб-пакет на целевой веб-сервер.
  • Используйте мастер импорта пакетов приложений в диспетчере IIS, чтобы установить веб-пакет и предоставить значения для переменных, таких как строки подключения и конечные точки службы.

В этом разделе показано, как выполнить эти процедуры. В задачах и пошаговых руководствах в этом разделе предполагается, что вы уже знакомы с основными понятиями, лежащими в основе веб-пакетов, веб-развертывания и WPP. Дополнительные сведения см. в статье Создание и упаковка проектов веб-приложений.

Примечание

Этот раздел лучше всего использовать в сочетании с разделом Настройка веб-сервера для публикации веб-развертывания (автономное развертывание), в котором объясняется, как установить необходимые компоненты и подготовить веб-сайт IIS к импорту пакетов.

Создание пакета веб-развертывания

Первая задача — создать пакет веб-развертывания для проекта веб-приложения, который требуется развернуть. Веб-пакеты можно создавать различными способами.

Подход 1. Создание пакета в процессе сборки с помощью Visual Studio

Вы можете настроить проект веб-приложения для создания пакета веб-развертывания после каждой сборки на вкладке Пакет или публикация веб-сайта на страницах свойств проекта. Этот процесс описан в разделе Создание и упаковка проектов веб-приложений.

Подход 2. Создание пакета в процессе сборки с помощью MSBuild

Если вы создаете проект веб-приложения напрямую с помощью MSBuild либо через пользовательский файл проекта MSBuild, либо из командной строки, вы можете создать пакет веб-развертывания в процессе сборки, включив свойства DeployOnBuild=true и DeployTarget=Package в команду. Этот процесс описан в разделе Основные сведения о процессе сборки.

Подход 3. Создание пакета по запросу в Visual Studio

Пакет веб-развертывания для проекта веб-приложения можно создать в любое время в Visual Studio 2010. Для этого в окне Обозреватель решений щелкните правой кнопкой мыши проект веб-приложения и выберите команду Собрать пакет развертывания.

Чтобы создать пакет веб-развертывания для проекта веб-приложения, в окне Обозреватель решений щелкните правой кнопкой мыши проект веб-приложения и выберите команду Собрать пакет развертывания.

Подход 4. Создание пакета по запросу из командной строки

Пакет веб-развертывания можно создать из командной строки, вызвав целевой объект пакета в проекте веб-приложения с помощью MSBuild. Команда должна выглядеть следующим образом:

MSBuild.exe [Path to your project].[csproj/vbproj] /T:Package

Какой бы подход вы ни использовали, конечный результат будет одинаковым. WPP создает пакет веб-развертывания в виде ZIP-файла вместе с различными вспомогательными ресурсами в выходной папке проекта веб-приложения.

W P P создает пакет веб-развертывания в виде ZIP-файла вместе с различными вспомогательными ресурсами в выходной папке проекта веб-приложения.

Если вы планируете импортировать веб-пакет вручную, вам потребуется только ZIP-файл. Скопируйте этот файл на целевой веб-сервер и сможете начать процесс импорта.

Импорт веб-пакета в IIS

Следующую процедуру можно использовать для импорта пакета веб-развертывания из локальной файловой системы на веб-сайт IIS. Перед выполнением этой процедуры убедитесь, что у вас есть:

  • Скопировал пакет веб-развертывания на веб-сервер.
  • Настроен веб-сервер IIS для размещения приложения.

Дополнительные сведения о настройке веб-сервера IIS для поддержки пакетов веб-развертывания см. в разделе Настройка веб-сервера для публикации веб-развертывания (автономное развертывание).

Импорт пакета веб-развертывания с помощью диспетчера IIS

  1. В диспетчере IIS в области Подключения щелкните правой кнопкой мыши веб-сайт IIS, наведите указатель мыши на пункт Развернуть и выберите пункт Импорт приложения.

    В диспетчере I I SS в области Подключения щелкните правой кнопкой мыши веб-сайт IIS, наведите указатель на пункт Развернуть, а затем выберите Пункт Импорт приложения.

  2. В мастере импорта пакетов приложений на странице Выбор пакета перейдите к расположению пакета веб-развертывания и нажмите кнопку Далее.

  3. На странице Выбор содержимого пакета очистите все содержимое, которое вам не требуется, и нажмите кнопку Далее.

    На странице Выбор содержимого пакета очистите все содержимое, которое вам не требуется, и нажмите кнопку Далее.

    Примечание

    Во многих случаях может потребоваться не импортировать все компоненты, которые входят в пакет веб-развертывания. Например, вы не захотите разрешить веб-развертыванию заменять связанную базу данных.
    Записи Предоставить разрешения задают разрешения для конечной файловой системы, чтобы убедиться, что удостоверение пула приложений может получить доступ к физической папке, в которую хранится содержимое веб-сайта. Кроме того, анонимному пользователю проверки подлинности предоставляется разрешение на чтение папки, чтобы разрешить приложению обслуживать файлы типов MIME. При желании вы можете удалить эти записи и настроить разрешения вручную.

  4. На странице Ввод сведений о пакете приложения укажите запрошенные сведения.

    На странице Ввод сведений о пакете приложения укажите запрошенные сведения.

  5. При создании веб-пакета WPP анализирует файл конфигурации приложения и обнаруживает любые переменные, такие как строки подключения и конечные точки службы. В данном случае:

    1. Путь к приложению — это путь IIS, по которому требуется установить приложение. Этот параметр является общим для всех пакетов развертывания, создаваемых WPP.

    2. Адрес конечной точки службы ContactService — это адрес, который приложение должно использовать для взаимодействия с развернутой службой WCF. Этот параметр соответствует записи в файлеweb.config .

    3. Первый параметр строки подключения — это строка подключения, которую веб-развертывание должно использовать для развертывания базы данных, связанной с приложением (в данном случае база данных членства ASP.NET). Этот параметр соответствует параметру на вкладке Пакет или публикация SQL в Visual Studio.

    4. Второй параметр строки подключения — это строка подключения, которую приложение будет использовать для взаимодействия с базой данных, когда она будет запущена. Соответствует записи строки подключения в файлеweb.config .

      Примечание

      Дополнительные сведения о том, откуда берутся эти параметры, см. в разделе Настройка параметров для развертывания веб-пакетов.

  6. Щелкните Далее.

  7. Если вы не в первый раз развертываете приложение на этом веб-сайте, вам будет предложено указать, нужно ли удалить все существующее содержимое перед установкой. Выберите параметр, соответствующий вашим требованиям, и нажмите кнопку Далее.

    Выберите параметр, соответствующий вашим требованиям, и нажмите кнопку Далее.

  8. Завершив установку пакета служб IIS, нажмите кнопку Готово.

    Завершив установку пакета, нажмите кнопку Готово.

На этом этапе вы успешно опубликовали веб-приложение в IIS.

Заключение

В этом разделе описывается, как импортировать пакет веб-развертывания на веб-сайт IIS с помощью диспетчера IIS. Такой подход к публикации веб-приложений подходит, когда ограничения безопасности или инфраструктуры делают удаленное развертывание невозможным или нежелательным.

Дополнительные материалы

Инструкции по настройке веб-сервера IIS для поддержки импорта веб-пакета вручную см. в статье Настройка веб-сервера для публикации веб-развертывания (автономное развертывание). Более общие рекомендации по развертыванию веб-пакетов см. в разделе Пошаговое руководство. Развертывание проекта веб-приложения с помощью пакета веб-развертывания (часть 1 из 4).