Назад | Перейти на главную страницу

Как перенести отдельное приложение с IIS6 на IIS7?

В настоящее время у меня есть несколько приложений, работающих в системе Windows Server 2003. Мы хотели бы перенести одно из этих приложений на IIS7 на Windows Server 2008 R2. Это новый веб-сервер, на нем установлены IIS, но больше ничего.

Я знаю, как перенести весь сервер и даже весь сайт, но как перенести общесерверные настройки, общесайтовые настройки, пул приложений, используемый приложением, а затем само приложение?

Основной ответ: используйте инструмент веб-развертывания.

Вы бы использовали что-то вроде

msdeploy -sync -source:metakey=lm/w3svc/1 -dest:package=c:\backupSite.zip -enableLink:AppPool

(Куда 1 - идентификатор сайта IIS) на исходном компьютере, а затем то же самое в обратном порядке на целевом компьютере:

msdeploy -sync -source:package=c:\backupSite.zip -dest:metakey=lm/w3svc/1

Пока вы восстанавливаете его на сервере IIS7, вам все равно нужно использовать тот же целевой тип восстановления, который был указан в качестве источника (т. Е. Метакей).

Вы можете добавить -whatif в конец, чтобы увидеть, что он планирует делать.

Подробнее здесь: http://technet.microsoft.com/en-us/library/ff633422(v=WS.10).aspx

и тут: http://learn.iis.net/page.aspx/427/migrate-a-web-site-from-iis-60-to-iis-7-or-above/

Вот команда, которая только что сработала для меня:

msdeploy -verb:sync 
         -source:metakey=lm/w3svc/1,computerName=original,encryptPassword="pwd",includeAcls=true 
         -disableLink:ContentExtension 
         -dest:package=original.zip,encryptPassword="pwd" 
         -enableLink:AppPool 
         -skip:WebApplication="^.*$"  >original.log

После этого я развернул само приложение из последнего пакета веб-развертывания.

У меня было несколько проблем. Сначала, когда я щелкнул «Веб-сайт по умолчанию» в диспетчере IIS, я получил сообщение об ошибке, что приложение «/» не было определено. Мне нужно было установить каталог сайта на D:\inetpub\wwwroot.

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

Кроме этого, сейчас все выглядит хорошо.