Поделиться через


Перенос веб-сайта из IIS 6.0 в IIS 7 или более поздней версии

По Фейт А

Это краткое руководство поможет вам перенести веб-сайт из IIS 6.0 в IIS 7 или более поздней версии с помощью средства веб-развертывания.

Какие типы миграций можно выполнить с помощью средства веб-развертывания?

  • Перенос 1 или 1000 веб-сайтов из IIS 6.0 в IIS 7 или более поздней версии, включая все параметры конфигурации, содержимое и сертификаты
  • Миграция одного приложения
  • Перенос всего сервера (всех веб-сайтов, пулов приложений и т. д.) из IIS 6.0 в IIS 7 или более поздней версии
  • Перенос пользовательского манифеста, состоящего из сайтов, пулов приложений, сборок, COM-объектов, разделов реестра, содержимого и т. д., из IIS 6.0 в IIS 7 или более поздней версии

Предварительные требования

Для этого руководства требуются следующие предварительные требования.

  • платформа .NET Framework 2.0 с пакетом обновления 1 (SP1) или более поздней версии
  • Средство веб-развертывания 1,1

Примечание. Если средство веб-развертывания еще не установлено, см. и Настройка веб-развертывания.

Часть 1. Просмотр зависимостей сайта

  1. Получите зависимости веб-сайта, выполнив следующую команду:

    msdeploy -verb:getDependencies -source:metakey=lm/w3svc/1
    
  2. Просмотрите выходные данные зависимостей и найдите все сопоставления скриптов или установленные компоненты, используемые сайтом. Например, если веб-сайт использует проверку подлинности Windows, вы увидите <имя зависимости="WindowsAuthentication" />.

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

  4. Скомпилируйте список компонентов, необходимых для назначения.

Подробные инструкции по анализу выходных данных getDependencies см. в разделе Просмотр зависимостей.

Часть 2. Настройка целевого объекта

Просмотрите список зависимостей и установите их на целевом сервере.

Например, предположим, что для веб-сайта используется следующее:

  • ASP.NET
  • Проверка подлинности Windows
  • Анонимная аутентификация

На основе этого анализа зависимостей необходимо установить соответствующие компоненты и модули.

Часть 3. Перенос сайта в целевой объект с помощью файла пакета

  1. Всегда выполняйте резервную копию целевого сервера. Даже если вы просто тестируете, это позволяет легко восстановить состояние сервера.

    %windir%\system32\inetsrv\appcmd add backup "PreWebDeploy"
    
  2. Выполните следующую команду на исходном сервере, чтобы создать пакет (сжатый) файл сервера:

    msdeploy -verb:sync  -source:metakey=lm/w3svc/1 -dest:package=c:\Site1.zip > WebDeployPackage.log
    
  3. Скопируйте файл пакета на целевой сервер.

  4. Выполните следующую команду на целевом сервере, чтобы проверить, что произойдет при выполнении операции синхронизации :

    msdeploy -verb:sync -source:package=c:\Site1.zip -dest:metakey=lm/w3svc/1 -whatif > WebDeploySync.log
    
  5. После проверки выходных данных выполните ту же команду еще раз без флага whatif:

    msdeploy -verb:sync -source:package=c:\Site1.zip -dest:metakey=lm/w3svc/1 > WebDeploySync.log
    

{Необязательно. Перенос сайта в целевой объект с помощью службы веб-Deployment Agent}

Если вы не хотите использовать пакет, вы можете использовать службу веб-Deployment Agent (MsDepSvc, также называемую удаленной службой) для синхронизации из IIS 6.0 в IIS 7 или более поздней версии.

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

  2. Запустите службу на компьютере.

    net start msdepsvc
    
  3. Выполните следующую команду, чтобы выполнить "принудительную" синхронизацию из локального источника в удаленное назначение (замените Server1 именем удаленного компьютера). Сначала выполните команду с флагом whatif, а затем без него после подтверждения того, что команда будет выполнять нужные действия.

    msdeploy -verb:sync -source:metakey=lm/w3svc/1 -dest:metakey=lm/w3svc/1,computername=Server1 -whatif > msdeploysync.log
    
  4. Кроме того, выполните следующую команду, чтобы выполнить синхронизацию извлечения из удаленного источника в локальное назначение (замените Server1 именем удаленного компьютера). Сначала выполните команду с флагом whatif, а затем без него после подтверждения того, что команда будет выполнять нужные действия.

    msdeploy -verb:sync -source:metakey=lm/w3svc/1,computername=Server1 -dest:metakey=lm/w3svc/1 -whatif > msdeploysync.log
    

Миграция сайта завершена. Для проверки проверьте просмотр веб-сайта на целевом сервере. Справку по устранению неполадок см. в разделе .

Итоги

Теперь вы синхронизировали веб-сайт с исходного сервера IIS 6.0 с целевым сервером IIS 7 или более поздней версии, просмотрев зависимости, настроив целевой сервер IIS и используя файл пакета или службу веб-Deployment Agent.