Я пытаюсь заставить работать msdeploy из командной строки и могу успешно провести тестирование непосредственно на WMSVC (используя HTTPS, порт 8172) как с локальной учетной записью администратора, так и с использованием учетной записи пользователя IIS Manager. Вот командная строка:
> msdeploy -verb:dump -source:appHostConfig=MyWebsite,wmsvc=myserver,username=iisuser,password=password -allowuntrusted
Итак, wmsvc = указывает msdeploy использовать https://myserver:8172/msdeploy.axd. Однако, поскольку целевой брандмауэр хоста не разрешает порт 8172, я действительно хотел бы использовать службу агента веб-развертывания через порт 80. Но при изменении wmsvc на computerName он отвечает 401:
> msdeploy -verb:dump -source:appHostConfig=MyWebsite,computername=myserver,username=myserver\localadmin,password=password
где computername = указывает msdeploy использовать http://myserver/MSDEPLOYAGENTSERVICE. В браузере этот URL запрашивает имя пользователя / пароль и возвращает пустую страницу (если она аутентифицирована), поэтому он, кажется, прослушивает и аутентифицируется правильно. Также я добавил полные права в корень сайта для NETWORK SERVICE.
Какая разница в использовании службы агента веб-развертывания по сравнению со стандартным WMSVC? Заранее спасибо!