Я пытался перенести веб-сервер IIS7 (довольно большой), и до сих пор я потрясен состоянием msdeploy и использую его для того, что мне нужно сделать. Хватит, вот моя текущая проблема:
На сервере, с которого я мигрирую, все сайты находятся на D:\
водить машину. Для нас невозможно иметь D:\
диск в новой среде, поэтому мне нужно изменить все пути к сайтам на C:\
. Я явно не хочу делать это для каждого сайта вручную, поэтому решил отредактировать пути в applicationHost.config
. Однако IIS, похоже, это не волнует. Все пути - C: \, но IIS все еще пытается ссылаться на D:\
. Когда я смотрю настройки сайта, он все еще говорит D:\
. Откуда в мире эта ценность?
Это на 64-битном сервере, и я проверил ДРУГОЕ applicationHost.config
в \syswow64\
, и это волшебным образом изменилось на C:\
также.
Как я могу это сделать?
"Исправил" это, скопировав applicationhost.config в ящик 2003, отредактировав его там и скопировав обратно. По-видимому, 2008 "притворяется", что сохраняет ваш файл (т.е. он показывает мои изменения, когда я открываю его в блокноте), но читает их либо из какой-то кэшированной версии, либо из другого файла
Должно быть относительно простое использование правильного синтаксиса в MSDeploy.
Лучше, чем пытаться объяснить здесь все тонкости процесса, я бы рекомендовал прочитать эта ветка на iis.net
Убедитесь, что вы прошли всю цепочку перед началом миграции.