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

msdeploy.exe стирает разрешения FTP на сайте, который был запрещен

Я использую msdeploy.exe для копирования нашей живой веб-среды на внешний сервер аварийного восстановления. На этом внешнем сервере также находится FTP-сайт, который мы используем для передачи резервных копий баз данных и журналов.

По умолчанию полная синхронизация веб-сервера с использованием MSDEPLOY удаляет любой сайт на целевом сервере, который не находится на исходном сервере, поэтому, чтобы не наносить ядерный удар по нашему FTP-серверу каждую ночь, я явно проигнорировал это в командной строке msdeploy.

Командная строка выглядит следующим образом (отформатирована для удобства чтения)

msdeploy.exe -verb:sync 
    -source:webserver,computername=HAPPYWEB 
    -dest:webserver 
    -enableRule:DoNotDeleteRule 
    -disableRule:SkipInvalidSource 
    -skip:WebSite="FTP Backups"

В IIS7 на сайте «Резервные копии FTP» есть узел «Правила авторизации FTP». Чтобы FTP-сайт работал, я должен добавить в этот раздел запись «Разрешить», предоставляя разрешения на чтение и запись соответствующим пользователям.

Командная строка msdeploy полностью удаляет этот параметр - хотя FTP-сайт остается в сети и не поврежден, раздел «Правила авторизации FTP» стирается, что означает, что наши запланированные передачи завершаются неудачно, пока кто-то не войдет в систему и не создаст заново соответствующие правила.

Это известная проблема? Могу ли я обойти это, используя некоторые настройки в msdeploy? А если нет, знает ли кто-нибудь, куда я отправляю сообщение об ошибке в средстве веб-развертывания?

Ваша команда выглядит хорошо отформатированной, и она должна пропускать синхронизацию веб-сайта «Резервные копии FTP». Что будет на выходе, когда вы запустите команду с переключателями -verbose и -debug?

PS: Если это поможет вам или кому-либо еще, напишите мне на адрес baslam на microsoft dot com. У меня есть инструмент веб-развертывания в Microsoft, и я буду рад вам помочь!