Общие сведения о веб-развертывании

По Харш Миттал

Что такое веб-развертывание?

Веб-развертывание — это расширяемое средство клиент-сервер для синхронизации содержимого и конфигурации со службами IIS. Веб-развертывание используется в основном в двух сценариях:

  1. Разработчики используют его для синхронизации скомпилированных веб-приложений (ASP .Net, PHP и т. д.) из средств разработчика (Visual Studio, WebMatrix и т. д.) со службами IIS.
  2. ИТ-специалисты используют его для переноса веб-сайтов & приложений из операционной системы под управлением более старой версии IIS, например IIS6, в операционную систему под управлением более новой версии IIS, например IIS 7.5.

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

Как веб-развертывание сравнивает с FTP?

Веб-развертывание часто сравнивают с такими технологиями, как FTP, XCOPY или RoboCopy. Хотя эти технологии полезны, веб-развертывание предоставляет ряд преимуществ.

Ниже приведено сравнение веб-развертывания в FTP:

  1. Веб-развертывание выполняется быстрее, чем FTP. Веб-развертывание не выдает разные команды для каждой операции. Вместо этого он выполняет сравнение в начале синхронизации и передает только изменения.
  2. Веб-развертывание является безопасным. Веб-развертывание поддерживает передачу по протоколу HTTPS. Обратите внимание, что варианты FTP, такие как SFTP и FTPS, также являются безопасными.
  3. Веб-развертывание может задавать дескрипторы безопасности (ACL) для целевых файлов и каталогов. Например, вы можете использовать веб-развертывание, чтобы предоставить пользователю Windows доступ к папке "Загрузки" приложения во время развертывания.
  4. Веб-развертывание может публиковать базы данных. Веб-развертывание имеет готовую поддержку для создания скриптов для SQL Server, MySQL Server, Sqlite и SQL Server Compact баз данных и применения результирующего скрипта во время синхронизации. Это может быть очень удобно, если вашему приложению требуется база данных для работы.
  5. Веб-развертывание может применять преобразования во время развертывания. Веб-развертывание можно использовать для изменения строка подключения или параметра приложения во время синхронизации. Веб-развертывание поддерживает широкий спектр преобразований, включая преобразование параметров IIS.
  6. Веб-развертывание интегрируется с Visual Studio 2010 и WebMatrix.
  7. Веб-развертывание является расширяемым. Веб-развертывание имеет многофункциональную общедоступную модель расширяемости, которая позволяет создавать новые сценарии.

Как это работает?

Схема: путь от источника к назначению для Администратор и другой путь для Администратор и не Администратор.

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

Инфраструктура

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

Платформа доступна через общедоступный API, а также через исполняемый файл командной строки ,msdeploy.exe.

Поставщики

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

Например, у веб-развертывания есть поставщик, который работает с базами данных SQL (dbFullSql), которые могут синхронизировать всю базу данных SQL Server с другим сервером. Другие встроенные поставщики синхронизируют базы данных MySQL (dbMySql), конфигурацию IIS 7 (appHostConfig), сборки GAC (gacAssembly) или COM-объекты (comObject32/comObject64). Более полный список можно найти на сайте TechNet.

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

Под капотом

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

Схема, на которую показано дерево принятия решений для назначения I I I S 7.

  • Если назначением является Windows Server 2003 под управлением IIS6, можно подключиться к конечной точке службы веб-Deployment Agent (также известной как служба удаленного агента). Служба удаленного агента обеспечивает безопасность этого подключения и доступна только пользователям с правами администратора.
  • Если назначением является Windows Server 2008 под управлением IIS7 или Windows Server 2008 R2 под управлением IIS7.5 И вы подключаетесь с учетными данными без прав администратора, необходимо подключиться к конечной точке службы веб-управления. Веб-развертывание устанавливает обработчик в службе веб-управления, которая позволяет неадминистраторам выполнять развертывание после проверки подлинности и авторизации с помощью службы веб-управления.
  • Если назначением является Windows Server 2008 под управлением IIS7 или Windows Server 2008 R2 под управлением IIS7.5 И вы подключаетесь с учетными данными администратора, вы можете подключиться к любой конечной точке.

Дополнительные сведения

Ознакомьтесь с нашими руководствами по iis.net и документацией technet.