Перенос веб-сайта из 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. Просмотр зависимостей сайта
Получите зависимости веб-сайта, выполнив следующую команду:
msdeploy -verb:getDependencies -source:metakey=lm/w3svc/1
Просмотрите выходные данные зависимостей и найдите все сопоставления скриптов или установленные компоненты, используемые сайтом. Например, если веб-сайт использует проверку подлинности Windows, вы увидите <имя зависимости="WindowsAuthentication" />.
Если ваш сайт наследует какие-либо карты скриптов, они не будут перечислены в зависимостях, и вам также следует просмотреть карты скриптов для вашего сайта вручную.
Скомпилируйте список компонентов, необходимых для назначения.
Подробные инструкции по анализу выходных данных getDependencies см. в разделе Просмотр зависимостей.
Часть 2. Настройка целевого объекта
Просмотрите список зависимостей и установите их на целевом сервере.
Например, предположим, что для веб-сайта используется следующее:
- ASP.NET
- Проверка подлинности Windows
- Анонимная аутентификация
На основе этого анализа зависимостей необходимо установить соответствующие компоненты и модули.
Часть 3. Перенос сайта в целевой объект с помощью файла пакета
Всегда выполняйте резервную копию целевого сервера. Даже если вы просто тестируете, это позволяет легко восстановить состояние сервера.
%windir%\system32\inetsrv\appcmd add backup "PreWebDeploy"
Выполните следующую команду на исходном сервере, чтобы создать пакет (сжатый) файл сервера:
msdeploy -verb:sync -source:metakey=lm/w3svc/1 -dest:package=c:\Site1.zip > WebDeployPackage.log
Скопируйте файл пакета на целевой сервер.
Выполните следующую команду на целевом сервере, чтобы проверить, что произойдет при выполнении операции синхронизации :
msdeploy -verb:sync -source:package=c:\Site1.zip -dest:metakey=lm/w3svc/1 -whatif > WebDeploySync.log
После проверки выходных данных выполните ту же команду еще раз без флага 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 или более поздней версии.
Установите удаленную службу в исходном или целевом расположении в зависимости от того, требуется ли выполнить синхронизацию с удаленным источником или с удаленным назначением.
Запустите службу на компьютере.
net start msdepsvc
Выполните следующую команду, чтобы выполнить "принудительную" синхронизацию из локального источника в удаленное назначение (замените Server1 именем удаленного компьютера). Сначала выполните команду с флагом whatif, а затем без него после подтверждения того, что команда будет выполнять нужные действия.
msdeploy -verb:sync -source:metakey=lm/w3svc/1 -dest:metakey=lm/w3svc/1,computername=Server1 -whatif > msdeploysync.log
Кроме того, выполните следующую команду, чтобы выполнить синхронизацию извлечения из удаленного источника в локальное назначение (замените 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.