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

Джейсон Ли

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

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

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

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

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

Обзор задачи

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

  • Создайте пакет веб-развертывания с помощью командной строки MSBuild, Team Build или 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 S Manager, в области

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

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

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

    Замечание

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

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

    На странице

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

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

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

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

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

      Замечание

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

  6. Нажмите кнопку Далее.

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

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

  8. После завершения установки пакета IIS нажмите кнопку "Готово".

    После завершения установки пакета нажмите кнопку

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

Conclusion

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

Дальнейшее чтение

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